cue.dev/x/azurepipelines@v0.1.0

schema.cue raw

    1package azurepipelines
    2
    3import "struct"
    4
    5// Pipeline schema
    6//
    7// A pipeline definition
    8#Pipeline: {
    9	@jsonschema(schema="http://json-schema.org/draft-07/schema#")
   10	@jsonschema(id="https://github.com/Microsoft/azure-pipelines-vscode/blob/main/service-schema.json")
   11	matchN(1, [#pipeline, =~"^$"])
   12
   13	#any: matchN(>=1, [string, [...#any], {
   14		...
   15	}])
   16
   17	#any_allowExpressions: matchN(>=1, [string, [...#any], {
   18		...
   19	}])
   20
   21	#boolean: matchN(>=1, [=~"^true$", =~"^y$", =~"^yes$", =~"^on$", =~"^false$", =~"^n$", =~"^no$", =~"^off$"])
   22
   23	// branch name or prefix filter
   24	#branchFilter: =~"^[^\\/~\\^\\: \\[\\]\\\\]+(\\/[^\\/~\\^\\: \\[\\]\\\\]+)*$"
   25
   26	#branchFilterArray: [...#branchFilter]
   27
   28	#buildResource: close({
   29		"build"!:      #referenceName
   30		"type"!:       #nonEmptyString
   31		"connection"!: #nonEmptyString
   32		"source"!:     #nonEmptyString
   33		"version"?:    #string_allowExpressions
   34		"branch"?:     #string_allowExpressions
   35		"trigger"?:    #buildResourceTrigger
   36	})
   37
   38	#buildResourceTrigger: matchN(>=1, [=~"^none$", =~"^true$"])
   39
   40	#buildResources: [...#buildResource]
   41
   42	#canaryDeploymentIncrements: [...#nonEmptyString]
   43
   44	#canaryDeploymentStrategy: close({
   45		"increments"?:       #canaryDeploymentIncrements
   46		"preDeploy"?:        #preDeployHook
   47		"deploy"?:           #deployHook
   48		"routeTraffic"?:     #routeTrafficHook
   49		"postRouteTraffic"?: #postRouteTrafficHook
   50		"on"?:               #onSuccessOrFailureHook
   51	})
   52
   53	#check: close({
   54		"type"?: #checkType
   55	})
   56
   57	// Production readiness check
   58	#checkType: =~"^productionReadinessPolicy$"
   59
   60	#checks: [...#check]
   61
   62	#containerArtifactType: matchN(>=1, [=~"^ACR$", string])
   63
   64	#containerBase: close({
   65		"endpoint"?:        #string_allowExpressions
   66		"env"?:             #mappingOfStringString
   67		"image"!:           #string
   68		"mapDockerSocket"?: #boolean
   69		"options"?:         #string_allowExpressions
   70		"ports"?:           #sequenceOfString_allowExpressions
   71		"volumes"?:         #sequenceOfString_allowExpressions
   72		"mountReadOnly"?:   #readOnlyMounts
   73	})
   74
   75	#containerResource: {
   76		"container"!:         #referenceName
   77		"type"?:              #containerArtifactType
   78		"trigger"?:           #containerResourceTrigger
   79		"azureSubscription"?: #nonEmptyString
   80		"resourceGroup"?:     #nonEmptyString
   81		"registry"?:          #nonEmptyString
   82		"repository"?:        #nonEmptyString
   83		"localImage"?:        #boolean
   84		"endpoint"?:          #string_allowExpressions
   85		"env"?:               #mappingOfStringString
   86		"image"!:             #string
   87		"mapDockerSocket"?:   #boolean
   88		"options"?:           #string_allowExpressions
   89		"ports"?:             #sequenceOfString_allowExpressions
   90		"volumes"?:           #sequenceOfString_allowExpressions
   91		"mountReadOnly"?:     #readOnlyMounts
   92		...
   93	}
   94
   95	#containerResourceTrigger: matchN(>=1, [=~"^none$", =~"^true$", close({
   96		"enabled"?: #boolean
   97		"tags"?:    #includeExcludeStringFilters
   98	})])
   99
  100	#containerResources: [...#containerResource]
  101
  102	#deployHook: close({
  103		"steps"?: #steps
  104		"pool"?:  #pool
  105	})
  106
  107	// Environment details
  108	#deploymentEnvironment: matchN(>=1, [string, close({
  109		"name"?:         #nonEmptyString
  110		"resourceName"?: #nonEmptyString
  111		"resourceId"?:   #nonEmptyString
  112		"resourceType"?: #nonEmptyString
  113		"tags"?:         #nonEmptyString
  114	})])
  115
  116	#deploymentStrategy: matchN(>=1, [close({
  117		"runOnce"?: #runOnceDeploymentStrategy
  118	}), close({
  119		"rolling"?: #rollingDeploymentStrategy
  120	}), close({
  121		"canary"?: #canaryDeploymentStrategy
  122	})])
  123
  124	#explicitResources: close({
  125		"repositories"?: #sequenceOfNonEmptyString
  126		"pools"?:        #sequenceOfNonEmptyString
  127	})
  128
  129	#extends: close({
  130		"template"?:   #nonEmptyString
  131		"parameters"?: #mapping
  132	})
  133
  134	#extendsParameters: [...#templateParameter]
  135
  136	#extendsTemplate: matchN(>=1, [close({
  137		"stages"?:     #stages
  138		"trigger"?:    #trigger
  139		"resources"?:  #resources
  140		"parameters"?: #extendsParameters
  141		"variables"?:  #variables
  142	}), close({
  143		"jobs"?:       #jobs
  144		"trigger"?:    #trigger
  145		"resources"?:  #resources
  146		"parameters"?: #extendsParameters
  147		"variables"?:  #variables
  148	}), close({
  149		"steps"?:      #steps
  150		"trigger"?:    #trigger
  151		"resources"?:  #resources
  152		"parameters"?: #extendsParameters
  153		"variables"?:  #variables
  154	}), close({
  155		"trigger"?:    #trigger
  156		"resources"?:  #resources
  157		"parameters"?: #extendsParameters
  158		"extends"?:    #extends
  159	})])
  160
  161	#extendsTemplateBase: close({
  162		"trigger"?:    #trigger
  163		"resources"?:  #resources
  164		"parameters"?: #extendsParameters
  165		"variables"?:  #variables
  166	})
  167
  168	#includeExcludeFilters: close({
  169		"include"?: #branchFilterArray
  170		"exclude"?: #branchFilterArray
  171	})
  172
  173	#includeExcludeStringFilters: matchN(>=1, [[...#nonEmptyString], close({
  174		"include"?: #sequenceOfNonEmptyString
  175		"exclude"?: #sequenceOfNonEmptyString
  176	})])
  177
  178	#job: matchN(>=1, [close({
  179		"job"?:                    #referenceName
  180		"displayName"?:            #string
  181		"dependsOn"?:              #jobDependsOn
  182		"condition"?:              #string
  183		"continueOnError"?:        #jobContinueOnError
  184		"timeoutInMinutes"?:       #nonEmptyString
  185		"cancelTimeoutInMinutes"?: #nonEmptyString
  186		"variables"?:              #variables
  187		"strategy"?:               #jobStrategy
  188		"pool"?:                   #pool
  189		"container"?:              #jobContainer
  190		"services"?:               #jobServices
  191		"workspace"?:              #jobWorkspace
  192		"uses"?:                   #explicitResources
  193		"steps"?:                  #steps
  194		"templateContext"?:        #templateContext
  195	}), close({
  196		"deployment"?:             #string
  197		"displayName"?:            #string
  198		"dependsOn"?:              #jobDependsOn
  199		"condition"?:              #string
  200		"continueOnError"?:        #jobContinueOnError
  201		"timeoutInMinutes"?:       #nonEmptyString
  202		"cancelTimeoutInMinutes"?: #nonEmptyString
  203		"variables"?:              #variables
  204		"pool"?:                   #pool
  205		"environment"?:            #deploymentEnvironment
  206		"strategy"?:               #deploymentStrategy
  207		"workspace"?:              #jobWorkspace
  208		"uses"?:                   #explicitResources
  209		"container"?:              #jobContainer
  210		"services"?:               #jobServices
  211		"templateContext"?:        #templateContext
  212	}), close({
  213		"template"?:   #nonEmptyString
  214		"parameters"?: #mapping
  215	})])
  216
  217	#jobContainer: matchN(>=1, [string, close({
  218		"alias"?: #string
  219	}), {
  220		"endpoint"?:        #string_allowExpressions
  221		"env"?:             #mappingOfStringString
  222		"image"!:           #string
  223		"mapDockerSocket"?: #boolean
  224		"options"?:         #string_allowExpressions
  225		"ports"?:           #sequenceOfString_allowExpressions
  226		"volumes"?:         #sequenceOfString_allowExpressions
  227		"mountReadOnly"?:   #readOnlyMounts
  228		...
  229	}])
  230
  231	#jobContinueOnError: string
  232
  233	#jobDecoratorSteps: close({
  234		"steps"?: #tasks
  235	})
  236
  237	#jobDependsOn: matchN(>=1, [string, [...#string]])
  238
  239	#jobMatrix: matchN(>=1, [struct.MinFields(1) & {
  240		{[=~"^[A-Za-z0-9_]+$"]: #matrixProperties}
  241		...
  242	}, string])
  243
  244	#jobServices: {
  245		...
  246	}
  247
  248	#jobStrategy: matchN(>=1, [close({
  249		"matrix"?:      #jobMatrix
  250		"maxParallel"?: #nonEmptyString
  251	}), close({
  252		"parallel"?: #nonEmptyString
  253	})])
  254
  255	#jobWorkspace: close({
  256		"clean"?: #string
  257	})
  258
  259	#jobs: [...#job]
  260
  261	#jobsTemplate: matchN(>=1, [close({
  262		"parameters"?: #templateParameters
  263		"jobs"?:       #jobs
  264	}), close({
  265		"parameters"?: #templateParameters
  266		"phases"?:     #phases
  267	})])
  268
  269	#legacyRepoResourceAlias: =~"^self$"
  270
  271	#legacyResource: close({
  272		"repo"?:       #legacyRepoResourceAlias
  273		"clean"?:      #string
  274		"fetchDepth"?: #string
  275		"lfs"?:        #string
  276	})
  277
  278	#lockBehavior: matchN(>=1, [=~"^sequential$", =~"^runLatest$"])
  279
  280	#mapping: {
  281		...
  282	}
  283
  284	#mappingOfStringString: {
  285		...
  286	}
  287
  288	// Variable-value pair to pass in this matrix instance
  289	#matrixProperties: {
  290		...
  291	}
  292
  293	#nonEmptyString: string
  294
  295	#onFailureHook: close({
  296		"steps"?: #steps
  297		"pool"?:  #pool
  298	})
  299
  300	#onSuccessHook: close({
  301		"steps"?: #steps
  302		"pool"?:  #pool
  303	})
  304
  305	#onSuccessOrFailureHook: close({
  306		"failure"?: #onFailureHook
  307		"success"?: #onSuccessHook
  308	})
  309
  310	#packageResource: close({
  311		"package"!:    #referenceName
  312		"type"!:       #nonEmptyString
  313		"connection"!: #nonEmptyString
  314		"name"!:       #nonEmptyString
  315		"version"?:    #string_allowExpressions
  316		"tag"?:        #string_allowExpressions
  317		"trigger"?:    #packageResourceTrigger
  318	})
  319
  320	#packageResourceTrigger: matchN(>=1, [=~"^none$", =~"^true$"])
  321
  322	#packageResources: [...#packageResource]
  323
  324	#parametersTemplate: matchN(>=1, [close({
  325		"parameters"?: #templateParameters
  326		"steps"!:      #steps
  327	}), close({
  328		"parameters"?: #templateParameters
  329		"jobs"?:       #jobs
  330	}), close({
  331		"parameters"?: #templateParameters
  332		"stages"?:     #stages
  333	}), close({
  334		"resources"?:  #resources
  335		"parameters"?: #templateParameters
  336		"extends"!:    #extends
  337	})])
  338
  339	#phase: matchN(>=1, [close({
  340		"phase"?:           #referenceName
  341		"dependsOn"?:       #jobDependsOn
  342		"displayName"?:     #string
  343		"condition"?:       #string
  344		"continueOnError"?: #jobContinueOnError
  345		"queue"?:           #phaseQueueTarget
  346		"variables"?:       #variables
  347		"steps"?:           #steps
  348	}), close({
  349		"phase"?:           #referenceName
  350		"dependsOn"?:       #jobDependsOn
  351		"displayName"?:     #string
  352		"condition"?:       #string
  353		"continueOnError"?: #jobContinueOnError
  354		"server"?:          #phaseServerTarget
  355		"variables"?:       #variables
  356		"steps"?:           #steps
  357	}), close({
  358		"template"?:   #nonEmptyString
  359		"parameters"?: #mapping
  360	})])
  361
  362	// Queue details
  363	#phaseQueueTarget: matchN(>=1, [string, close({
  364		"cancelTimeoutInMinutes"?: #nonEmptyString
  365		"container"?:              #nonEmptyString
  366		"demands"?:                #phaseTargetDemands
  367		"matrix"?:                 #phaseTargetMatrix
  368		"name"?:                   #string
  369		"parallel"?:               #nonEmptyString
  370		"timeoutInMinutes"?:       #nonEmptyString
  371		"workspace"?:              #phaseTargetWorkspace
  372	})])
  373
  374	#phaseServerTarget: matchN(>=1, [string, close({
  375		"cancelTimeoutInMinutes"?: #nonEmptyString
  376		"matrix"?:                 #phaseTargetMatrix
  377		"parallel"?:               #nonEmptyString
  378		"timeoutInMinutes"?:       #nonEmptyString
  379	})])
  380
  381	#phaseTargetDemands: matchN(>=1, [string, [...#nonEmptyString]])
  382
  383	// List of permutations of variable values to run
  384	#phaseTargetMatrix: matchN(>=1, [{
  385		...
  386	}, string]) & (string | struct.MinFields(1) & {
  387		{[=~"^[A-Za-z0-9_]+$"]: #matrixProperties}
  388		...
  389	})
  390
  391	#phaseTargetWorkspace: close({
  392		"clean"?: #string
  393	})
  394
  395	#phases: [...#phase]
  396
  397	#pipeline: matchN(>=1, [close({
  398		"stages"!:                       #stages
  399		"pool"?:                         #pool
  400		"name"?:                         #string_allowExpressions
  401		"appendCommitMessageToRunName"?: #boolean
  402		"trigger"?:                      #trigger
  403		"parameters"?:                   #pipelineTemplateParameters
  404		"pr"?:                           #pr
  405		"schedules"?:                    #schedules
  406		"resources"?:                    #resources
  407		"variables"?:                    #variables
  408		"lockBehavior"?:                 #lockBehavior
  409	}), close({
  410		"extends"!:                      #extends
  411		"pool"?:                         #pool
  412		"name"?:                         #string_allowExpressions
  413		"appendCommitMessageToRunName"?: #boolean
  414		"trigger"?:                      #trigger
  415		"parameters"?:                   #pipelineTemplateParameters
  416		"pr"?:                           #pr
  417		"schedules"?:                    #schedules
  418		"resources"?:                    #resources
  419		"variables"?:                    #variables
  420		"lockBehavior"?:                 #lockBehavior
  421	}), close({
  422		"jobs"!:                         #jobs
  423		"pool"?:                         #pool
  424		"name"?:                         #string_allowExpressions
  425		"appendCommitMessageToRunName"?: #boolean
  426		"trigger"?:                      #trigger
  427		"parameters"?:                   #pipelineTemplateParameters
  428		"pr"?:                           #pr
  429		"schedules"?:                    #schedules
  430		"resources"?:                    #resources
  431		"variables"?:                    #variables
  432		"lockBehavior"?:                 #lockBehavior
  433	}), close({
  434		"phases"!:                       #phases
  435		"name"?:                         #string_allowExpressions
  436		"appendCommitMessageToRunName"?: #boolean
  437		"trigger"?:                      #trigger
  438		"parameters"?:                   #pipelineTemplateParameters
  439		"pr"?:                           #pr
  440		"schedules"?:                    #schedules
  441		"resources"?:                    #resources
  442		"variables"?:                    #variables
  443		"lockBehavior"?:                 #lockBehavior
  444	}), close({
  445		"strategy"?:                     #jobStrategy
  446		"continueOnError"?:              #jobContinueOnError
  447		"pool"?:                         #pool
  448		"container"?:                    #jobContainer
  449		"services"?:                     #jobServices
  450		"workspace"?:                    #jobWorkspace
  451		"steps"!:                        #steps
  452		"name"?:                         #string_allowExpressions
  453		"appendCommitMessageToRunName"?: #boolean
  454		"trigger"?:                      #trigger
  455		"parameters"?:                   #pipelineTemplateParameters
  456		"pr"?:                           #pr
  457		"schedules"?:                    #schedules
  458		"resources"?:                    #resources
  459		"variables"?:                    #variables
  460		"lockBehavior"?:                 #lockBehavior
  461	}), close({
  462		"continueOnError"?:              #jobContinueOnError
  463		"queue"?:                        #phaseQueueTarget
  464		"steps"!:                        #steps
  465		"name"?:                         #string_allowExpressions
  466		"appendCommitMessageToRunName"?: #boolean
  467		"trigger"?:                      #trigger
  468		"parameters"?:                   #pipelineTemplateParameters
  469		"pr"?:                           #pr
  470		"schedules"?:                    #schedules
  471		"resources"?:                    #resources
  472		"variables"?:                    #variables
  473		"lockBehavior"?:                 #lockBehavior
  474	}), close({
  475		"continueOnError"?:              #jobContinueOnError
  476		"server"?:                       #phaseServerTarget
  477		"steps"!:                        #steps
  478		"name"?:                         #string_allowExpressions
  479		"appendCommitMessageToRunName"?: #boolean
  480		"trigger"?:                      #trigger
  481		"parameters"?:                   #pipelineTemplateParameters
  482		"pr"?:                           #pr
  483		"schedules"?:                    #schedules
  484		"resources"?:                    #resources
  485		"variables"?:                    #variables
  486		"lockBehavior"?:                 #lockBehavior
  487	})])
  488
  489	#pipelineAnyBase: close({
  490		"name"?:                         #any_allowExpressions
  491		"appendCommitMessageToRunName"?: #any_allowExpressions
  492		"trigger"?:                      #any_allowExpressions
  493		"parameters"?:                   #any_allowExpressions
  494		"pr"?:                           #any_allowExpressions
  495		"schedules"?:                    #any_allowExpressions
  496		"resources"?:                    #any_allowExpressions
  497		"variables"?:                    #any_allowExpressions
  498		"stages"?:                       #any_allowExpressions
  499		"jobs"?:                         #any_allowExpressions
  500		"extends"?:                      #any_allowExpressions
  501		"phases"?:                       #any_allowExpressions
  502		"strategy"?:                     #any_allowExpressions
  503		"continueOnError"?:              #any_allowExpressions
  504		"pool"?:                         #any_allowExpressions
  505		"container"?:                    #any_allowExpressions
  506		"services"?:                     #any_allowExpressions
  507		"workspace"?:                    #any_allowExpressions
  508		"steps"?:                        #any_allowExpressions
  509		"queue"?:                        #any_allowExpressions
  510		"server"?:                       #any_allowExpressions
  511		"lockBehavior"?:                 #lockBehavior
  512	})
  513
  514	#pipelineBase: close({
  515		"name"?:                         #string_allowExpressions
  516		"appendCommitMessageToRunName"?: #boolean
  517		"trigger"?:                      #trigger
  518		"parameters"?:                   #pipelineTemplateParameters
  519		"pr"?:                           #pr
  520		"schedules"?:                    #schedules
  521		"resources"?:                    #resources
  522		"variables"?:                    #variables
  523		"lockBehavior"?:                 #lockBehavior
  524	})
  525
  526	#pipelinePR: close({
  527		"pr"?:                           #pr
  528		"name"?:                         #any_allowExpressions
  529		"appendCommitMessageToRunName"?: #any_allowExpressions
  530		"trigger"?:                      #any_allowExpressions
  531		"parameters"?:                   #any_allowExpressions
  532		"schedules"?:                    #any_allowExpressions
  533		"resources"?:                    #any_allowExpressions
  534		"variables"?:                    #any_allowExpressions
  535		"stages"?:                       #any_allowExpressions
  536		"jobs"?:                         #any_allowExpressions
  537		"extends"?:                      #any_allowExpressions
  538		"phases"?:                       #any_allowExpressions
  539		"strategy"?:                     #any_allowExpressions
  540		"continueOnError"?:              #any_allowExpressions
  541		"pool"?:                         #any_allowExpressions
  542		"container"?:                    #any_allowExpressions
  543		"services"?:                     #any_allowExpressions
  544		"workspace"?:                    #any_allowExpressions
  545		"steps"?:                        #any_allowExpressions
  546		"queue"?:                        #any_allowExpressions
  547		"server"?:                       #any_allowExpressions
  548		"lockBehavior"?:                 #lockBehavior
  549	})
  550
  551	#pipelineParameters: close({
  552		"parameters"?:                   #pipelineTemplateParameters
  553		"name"?:                         #any_allowExpressions
  554		"appendCommitMessageToRunName"?: #any_allowExpressions
  555		"trigger"?:                      #any_allowExpressions
  556		"pr"?:                           #any_allowExpressions
  557		"schedules"?:                    #any_allowExpressions
  558		"resources"?:                    #any_allowExpressions
  559		"variables"?:                    #any_allowExpressions
  560		"stages"?:                       #any_allowExpressions
  561		"jobs"?:                         #any_allowExpressions
  562		"extends"?:                      #any_allowExpressions
  563		"phases"?:                       #any_allowExpressions
  564		"strategy"?:                     #any_allowExpressions
  565		"continueOnError"?:              #any_allowExpressions
  566		"pool"?:                         #any_allowExpressions
  567		"container"?:                    #any_allowExpressions
  568		"services"?:                     #any_allowExpressions
  569		"workspace"?:                    #any_allowExpressions
  570		"steps"?:                        #any_allowExpressions
  571		"queue"?:                        #any_allowExpressions
  572		"server"?:                       #any_allowExpressions
  573		"lockBehavior"?:                 #lockBehavior
  574	})
  575
  576	#pipelineResource: close({
  577		"pipeline"!: #referenceName
  578		"project"?:  #nonEmptyString
  579		"source"?:   #nonEmptyString
  580		"version"?:  #string_allowExpressions
  581		"branch"?:   #string_allowExpressions
  582		"tags"?:     #sequenceOfNonEmptyString
  583		"trigger"?:  #pipelineResourceTrigger
  584	})
  585
  586	#pipelineResourceTrigger: matchN(>=1, [=~"^none$", =~"^true$", close({
  587		"enabled"?:  #boolean
  588		"branches"?: #triggerBranchFilter
  589		"stages"?:   #sequenceOfNonEmptyString
  590		"tags"?:     #sequenceOfNonEmptyString
  591	})])
  592
  593	#pipelineResources: [...#pipelineResource]
  594
  595	#pipelineSchedules: close({
  596		"schedules"?:                    #schedules
  597		"name"?:                         #any_allowExpressions
  598		"appendCommitMessageToRunName"?: #any_allowExpressions
  599		"trigger"?:                      #any_allowExpressions
  600		"parameters"?:                   #any_allowExpressions
  601		"pr"?:                           #any_allowExpressions
  602		"resources"?:                    #any_allowExpressions
  603		"variables"?:                    #any_allowExpressions
  604		"stages"?:                       #any_allowExpressions
  605		"jobs"?:                         #any_allowExpressions
  606		"extends"?:                      #any_allowExpressions
  607		"phases"?:                       #any_allowExpressions
  608		"strategy"?:                     #any_allowExpressions
  609		"continueOnError"?:              #any_allowExpressions
  610		"pool"?:                         #any_allowExpressions
  611		"container"?:                    #any_allowExpressions
  612		"services"?:                     #any_allowExpressions
  613		"workspace"?:                    #any_allowExpressions
  614		"steps"?:                        #any_allowExpressions
  615		"queue"?:                        #any_allowExpressions
  616		"server"?:                       #any_allowExpressions
  617		"lockBehavior"?:                 #lockBehavior
  618	})
  619
  620	#pipelineTemplateParameter: close({
  621		"name"?:        #nonEmptyString
  622		"displayName"?: #string
  623		"type"?:        #pipelineTemplateParameterType
  624		"default"?:     #any
  625		"values"?:      #sequenceOfNonEmptyString
  626	})
  627
  628	#pipelineTemplateParameterType: matchN(>=1, [=~"^boolean$", =~"^container$", =~"^containerList$", =~"^deployment$", =~"^deploymentList$", =~"^environment$", =~"^filePath$", =~"^job$", =~"^jobList$", =~"^number$", =~"^object$", =~"^pool$", =~"^secureFile$", =~"^serviceConnection$", =~"^stage$", =~"^stageList$", =~"^step$", =~"^stepList$", =~"^string$", =~"^stringList$"])
  629
  630	#pipelineTemplateParameters: [...#pipelineTemplateParameter]
  631
  632	#pipelineTrigger: close({
  633		"trigger"?:                      #trigger
  634		"name"?:                         #any_allowExpressions
  635		"appendCommitMessageToRunName"?: #any_allowExpressions
  636		"parameters"?:                   #any_allowExpressions
  637		"pr"?:                           #any_allowExpressions
  638		"schedules"?:                    #any_allowExpressions
  639		"resources"?:                    #any_allowExpressions
  640		"variables"?:                    #any_allowExpressions
  641		"stages"?:                       #any_allowExpressions
  642		"jobs"?:                         #any_allowExpressions
  643		"extends"?:                      #any_allowExpressions
  644		"phases"?:                       #any_allowExpressions
  645		"strategy"?:                     #any_allowExpressions
  646		"continueOnError"?:              #any_allowExpressions
  647		"pool"?:                         #any_allowExpressions
  648		"container"?:                    #any_allowExpressions
  649		"services"?:                     #any_allowExpressions
  650		"workspace"?:                    #any_allowExpressions
  651		"steps"?:                        #any_allowExpressions
  652		"queue"?:                        #any_allowExpressions
  653		"server"?:                       #any_allowExpressions
  654		"lockBehavior"?:                 #lockBehavior
  655	})
  656
  657	// Pool details
  658	#pool: matchN(>=1, [string, {
  659		"name"?:    #nonEmptyString
  660		"demands"?: #poolDemands
  661		"vmImage"?: #nonEmptyString
  662		...
  663	}])
  664
  665	#poolDemands: matchN(>=1, [string, [...#nonEmptyString]])
  666
  667	#postRouteTrafficHook: close({
  668		"steps"?: #steps
  669		"pool"?:  #pool
  670	})
  671
  672	#pr: matchN(>=1, [=~"^none$", [...#branchFilter], close({
  673		"autoCancel"?: #boolean
  674		"branches"?:   #includeExcludeFilters
  675		"paths"?:      #includeExcludeFilters
  676		"drafts"?:     #boolean
  677	})])
  678
  679	#preDeployHook: close({
  680		"steps"?: #steps
  681		"pool"?:  #pool
  682	})
  683
  684	#readOnlyMounts: close({
  685		"work"?:      #boolean
  686		"externals"?: #boolean
  687		"tools"?:     #boolean
  688		"tasks"?:     #boolean
  689	})
  690
  691	#referenceName: =~"^[-_A-Za-z0-9]*$"
  692
  693	#repositoryCheckoutOptions: close({
  694		"clean"?:              #string
  695		"fetchDepth"?:         #string
  696		"fetchTags"?:          #string
  697		"lfs"?:                #string
  698		"submodules"?:         #string
  699		"persistCredentials"?: #string
  700	})
  701
  702	#repositoryResource: {
  703		"repository"!:      #referenceName
  704		"endpoint"?:        #nonEmptyString
  705		"trigger"?:         #trigger
  706		"checkoutOptions"?: #repositoryCheckoutOptions
  707		"name"?:            #nonEmptyString
  708		"ref"?:             #string_allowExpressions
  709		"type"?:            #string
  710		...
  711	}
  712
  713	#repositoryResources: [...#repositoryResource]
  714
  715	#resources: matchN(>=1, [close({
  716		"builds"?:       #buildResources
  717		"containers"?:   #containerResources
  718		"pipelines"?:    #pipelineResources
  719		"repositories"?: #repositoryResources
  720		"webhooks"?:     #webhookResources
  721		"packages"?:     #packageResources
  722	}), [...#legacyResource]])
  723
  724	#rollingDeploymentStrategy: close({
  725		"maxParallel"?:      #nonEmptyString
  726		"preDeploy"?:        #preDeployHook
  727		"deploy"?:           #deployHook
  728		"routeTraffic"?:     #routeTrafficHook
  729		"postRouteTraffic"?: #postRouteTrafficHook
  730		"on"?:               #onSuccessOrFailureHook
  731	})
  732
  733	#routeTrafficHook: close({
  734		"steps"?: #steps
  735		"pool"?:  #pool
  736	})
  737
  738	#runOnceDeploymentStrategy: close({
  739		"preDeploy"?:        #preDeployHook
  740		"deploy"?:           #deployHook
  741		"routeTraffic"?:     #routeTrafficHook
  742		"postRouteTraffic"?: #postRouteTrafficHook
  743		"on"?:               #onSuccessOrFailureHook
  744	})
  745
  746	#schedule: close({
  747		"cron"?:        #nonEmptyString
  748		"displayName"?: #string
  749		"branches"?:    #includeExcludeFilters
  750		"batch"?:       #boolean
  751		"always"?:      #boolean
  752	})
  753
  754	#schedules: [...#schedule]
  755
  756	#sequence: [...#any]
  757
  758	#sequenceOfNonEmptyString: [...#nonEmptyString]
  759
  760	#sequenceOfString_allowExpressions: [...#string_allowExpressions]
  761
  762	#stage: matchN(>=1, [close({
  763		"stage"?:           #string
  764		"group"?:           #string
  765		"displayName"?:     #string
  766		"pool"?:            #pool
  767		"dependsOn"?:       #jobDependsOn
  768		"condition"?:       #string
  769		"variables"?:       #variables
  770		"jobs"?:            #jobs
  771		"lockBehavior"?:    #lockBehavior
  772		"trigger"?:         #stageTrigger
  773		"isSkippable"?:     #boolean
  774		"templateContext"?: #templateContext
  775		"checks"?:          #checks
  776	}), close({
  777		"template"?:   #nonEmptyString
  778		"parameters"?: #mapping
  779	})])
  780
  781	#stageTrigger: matchN(>=1, [=~"^manual$", =~"^automatic$"])
  782
  783	#stages: [...#stage]
  784
  785	#stagesTemplate: close({
  786		"parameters"?: #templateParameters
  787		"stages"?:     #stages
  788	})
  789
  790	#step: matchN(>=1, [#task, close({
  791		"script"!:                  #string
  792		"failOnStderr"?:            #string
  793		"workingDirectory"?:        #string
  794		"condition"?:               #string
  795		"continueOnError"?:         #boolean
  796		"displayName"?:             #string
  797		"target"?:                  #stepTarget
  798		"enabled"?:                 #boolean
  799		"env"?:                     #mappingOfStringString
  800		"name"?:                    #referenceName
  801		"timeoutInMinutes"?:        #nonEmptyString
  802		"retryCountOnTaskFailure"?: #string
  803	}), close({
  804		"powershell"!:              #string
  805		"errorActionPreference"?:   #string
  806		"failOnStderr"?:            #string
  807		"ignoreLASTEXITCODE"?:      #string
  808		"workingDirectory"?:        #string
  809		"condition"?:               #string
  810		"continueOnError"?:         #boolean
  811		"displayName"?:             #string
  812		"target"?:                  #stepTarget
  813		"enabled"?:                 #boolean
  814		"env"?:                     #mappingOfStringString
  815		"name"?:                    #referenceName
  816		"timeoutInMinutes"?:        #nonEmptyString
  817		"retryCountOnTaskFailure"?: #string
  818	}), close({
  819		"pwsh"!:                    #string
  820		"errorActionPreference"?:   #string
  821		"failOnStderr"?:            #string
  822		"ignoreLASTEXITCODE"?:      #string
  823		"workingDirectory"?:        #string
  824		"condition"?:               #string
  825		"continueOnError"?:         #boolean
  826		"displayName"?:             #string
  827		"target"?:                  #stepTarget
  828		"enabled"?:                 #boolean
  829		"env"?:                     #mappingOfStringString
  830		"name"?:                    #referenceName
  831		"timeoutInMinutes"?:        #nonEmptyString
  832		"retryCountOnTaskFailure"?: #string
  833	}), close({
  834		"bash"!:                    #string
  835		"failOnStderr"?:            #string
  836		"workingDirectory"?:        #string
  837		"condition"?:               #string
  838		"continueOnError"?:         #boolean
  839		"displayName"?:             #string
  840		"target"?:                  #stepTarget
  841		"enabled"?:                 #boolean
  842		"env"?:                     #mappingOfStringString
  843		"name"?:                    #referenceName
  844		"timeoutInMinutes"?:        #nonEmptyString
  845		"retryCountOnTaskFailure"?: #string
  846	}), close({
  847		"checkout"?:                  #string
  848		"clean"?:                     #string
  849		"fetchDepth"?:                #string
  850		"fetchFilter"?:               #string
  851		"fetchTags"?:                 #string
  852		"lfs"?:                       #string
  853		"persistCredentials"?:        #string
  854		"submodules"?:                #string
  855		"path"?:                      #string
  856		"sparseCheckoutDirectories"?: #string
  857		"sparseCheckoutPatterns"?:    #string
  858		"workspaceRepo"?:             #string
  859		"condition"?:                 #string
  860		"continueOnError"?:           #boolean
  861		"displayName"?:               #string
  862		"target"?:                    #stepTarget
  863		"enabled"?:                   #boolean
  864		"env"?:                       #mappingOfStringString
  865		"name"?:                      #referenceName
  866		"timeoutInMinutes"?:          #nonEmptyString
  867		"retryCountOnTaskFailure"?:   #string
  868	}), close({
  869		"download"!:                #nonEmptyString
  870		"artifact"?:                #nonEmptyString
  871		"patterns"?:                #nonEmptyString
  872		"condition"?:               #string
  873		"continueOnError"?:         #boolean
  874		"displayName"?:             #string
  875		"target"?:                  #stepTarget
  876		"enabled"?:                 #boolean
  877		"env"?:                     #mappingOfStringString
  878		"name"?:                    #referenceName
  879		"timeoutInMinutes"?:        #nonEmptyString
  880		"retryCountOnTaskFailure"?: #string
  881	}), close({
  882		"downloadBuild"?:           #nonEmptyString
  883		"artifact"?:                #string
  884		"path"?:                    #string
  885		"patterns"?:                #string
  886		"inputs"?:                  #mappingOfStringString
  887		"condition"?:               #string
  888		"continueOnError"?:         #boolean
  889		"displayName"?:             #string
  890		"target"?:                  #stepTarget
  891		"enabled"?:                 #boolean
  892		"env"?:                     #mappingOfStringString
  893		"name"?:                    #referenceName
  894		"timeoutInMinutes"?:        #nonEmptyString
  895		"retryCountOnTaskFailure"?: #string
  896	}), close({
  897		"getPackage"?:              #nonEmptyString
  898		"path"?:                    #string
  899		"condition"?:               #string
  900		"continueOnError"?:         #boolean
  901		"displayName"?:             #string
  902		"target"?:                  #stepTarget
  903		"enabled"?:                 #boolean
  904		"env"?:                     #mappingOfStringString
  905		"name"?:                    #referenceName
  906		"timeoutInMinutes"?:        #nonEmptyString
  907		"retryCountOnTaskFailure"?: #string
  908	}), close({
  909		"upload"?:                  #string
  910		"artifact"?:                #string
  911		"condition"?:               #string
  912		"continueOnError"?:         #boolean
  913		"displayName"?:             #string
  914		"target"?:                  #stepTarget
  915		"enabled"?:                 #boolean
  916		"env"?:                     #mappingOfStringString
  917		"name"?:                    #referenceName
  918		"timeoutInMinutes"?:        #nonEmptyString
  919		"retryCountOnTaskFailure"?: #string
  920	}), close({
  921		"publish"?:                 #string
  922		"artifact"?:                #string
  923		"condition"?:               #string
  924		"continueOnError"?:         #boolean
  925		"displayName"?:             #string
  926		"target"?:                  #stepTarget
  927		"enabled"?:                 #boolean
  928		"env"?:                     #mappingOfStringString
  929		"name"?:                    #referenceName
  930		"timeoutInMinutes"?:        #nonEmptyString
  931		"retryCountOnTaskFailure"?: #string
  932	}), close({
  933		"template"?:   #nonEmptyString
  934		"parameters"?: #mapping
  935	}), close({
  936		"reviewApp"?:               #string
  937		"condition"?:               #string
  938		"continueOnError"?:         #boolean
  939		"displayName"?:             #string
  940		"target"?:                  #stepTarget
  941		"enabled"?:                 #boolean
  942		"env"?:                     #mappingOfStringString
  943		"name"?:                    #referenceName
  944		"timeoutInMinutes"?:        #nonEmptyString
  945		"retryCountOnTaskFailure"?: #string
  946	})])
  947
  948	// Step target
  949	#stepTarget: matchN(>=1, [string, close({
  950		"container"?:         #nonEmptyString
  951		"commands"?:          #string
  952		"settableVariables"?: #variableRestrictions
  953	})])
  954
  955	#steps: [...#step]
  956
  957	#stepsTemplate: close({
  958		"parameters"?: #templateParameters
  959		"steps"?:      #steps
  960	})
  961
  962	#string: string
  963
  964	#string_allowExpressions: string
  965
  966	#task: matchN(>=1, [{
  967		// PowerShell
  968		//
  969		// Run a PowerShell script on Linux, macOS, or Windows
  970		"task"!: null | bool | number | =~"^PowerShell@2$" | [...] | {
  971			...
  972		}
  973
  974		// PowerShell inputs
  975		"inputs"?: null | bool | number | string | [...] | close({
  976			// Type
  977			"targetType"?: "filePath" | "inline"
  978
  979			// Script Path
  980			"filePath"?: string
  981
  982			// Arguments
  983			"arguments"?: string
  984
  985			// Script
  986			"script"?: string
  987
  988			// ErrorActionPreference
  989			"errorActionPreference"?: "default" | "stop" | "continue" | "silentlyContinue"
  990
  991			// WarningPreference
  992			"warningPreference"?: "default" | "stop" | "continue" | "silentlyContinue"
  993
  994			// InformationPreference
  995			"informationPreference"?: "default" | "stop" | "continue" | "silentlyContinue"
  996
  997			// VerbosePreference
  998			"verbosePreference"?: "default" | "stop" | "continue" | "silentlyContinue"
  999
 1000			// DebugPreference
 1001			"debugPreference"?: "default" | "stop" | "continue" | "silentlyContinue"
 1002
 1003			// ProgressPreference
 1004			"progressPreference"?: "default" | "stop" | "continue" | "silentlyContinue"
 1005
 1006			// Fail on Standard Error
 1007			"failOnStderr"?: bool
 1008
 1009			// Show warnings as Azure DevOps warnings
 1010			"showWarnings"?: bool
 1011
 1012			// Ignore $LASTEXITCODE
 1013			"ignoreLASTEXITCODE"?: bool
 1014
 1015			// Use PowerShell Core
 1016			"pwsh"?: bool
 1017
 1018			// Working Directory
 1019			"workingDirectory"?: string
 1020
 1021			// Run script in the separate scope
 1022			"runScriptInSeparateScope"?: bool
 1023		})
 1024		...
 1025	}, {
 1026		// PowerShell
 1027		//
 1028		// Run a PowerShell script
 1029		"task"!: null | bool | number | =~"^PowerShell@1$" | [...] | {
 1030			...
 1031		}
 1032
 1033		// PowerShell inputs
 1034		"inputs"?: null | bool | number | string | [...] | close({
 1035			// Type
 1036			"scriptType"?: "inlineScript" | "filePath"
 1037
 1038			// Script Path
 1039			"scriptName"?: string
 1040
 1041			// Arguments
 1042			"arguments"?: string
 1043
 1044			// Working folder
 1045			"workingFolder"?: string
 1046
 1047			// Inline Script
 1048			"inlineScript"?: string
 1049
 1050			// Fail on Standard Error
 1051			"failOnStandardError"?: bool
 1052		})
 1053		...
 1054	}, {
 1055		// Azure PowerShell
 1056		//
 1057		// Run a PowerShell script within an Azure environment
 1058		"task"!: null | bool | number | =~"^AzurePowerShell@5$" | [...] | {
 1059			...
 1060		}
 1061
 1062		// Azure PowerShell inputs
 1063		"inputs"!: null | bool | number | string | [...] | close({
 1064			// Azure Subscription
 1065			"azureSubscription"!: string
 1066
 1067			// Script Type
 1068			"ScriptType"?: "FilePath" | "InlineScript"
 1069
 1070			// Script Path
 1071			"ScriptPath"?: string
 1072
 1073			// Inline Script
 1074			"Inline"?: string
 1075
 1076			// Script Arguments
 1077			"ScriptArguments"?: string
 1078
 1079			// ErrorActionPreference
 1080			"errorActionPreference"?: "stop" | "continue" | "silentlyContinue"
 1081
 1082			// Fail on Standard Error
 1083			"FailOnStandardError"?: bool
 1084
 1085			// Azure PowerShell Version
 1086			"azurePowerShellVersion"?: "LatestVersion" | "OtherVersion"
 1087
 1088			// Preferred Azure PowerShell Version
 1089			"preferredAzurePowerShellVersion"?: string
 1090
 1091			// Use PowerShell Core
 1092			"pwsh"?: bool
 1093
 1094			// Validate script signature
 1095			"validateScriptSignature"?: bool
 1096
 1097			// Working Directory
 1098			"workingDirectory"?: string
 1099		})
 1100		...
 1101	}, {
 1102		// Azure PowerShell
 1103		//
 1104		// Run a PowerShell script within an Azure environment
 1105		"task"!: null | bool | number | =~"^AzurePowerShell@4$" | [...] | {
 1106			...
 1107		}
 1108
 1109		// Azure PowerShell inputs
 1110		"inputs"!: null | bool | number | string | [...] | close({
 1111			// Azure Subscription
 1112			"azureSubscription"!: string
 1113
 1114			// Script Type
 1115			"ScriptType"?: "FilePath" | "InlineScript"
 1116
 1117			// Script Path
 1118			"ScriptPath"?: string
 1119
 1120			// Inline Script
 1121			"Inline"?: string
 1122
 1123			// Script Arguments
 1124			"ScriptArguments"?: string
 1125
 1126			// ErrorActionPreference
 1127			"errorActionPreference"?: "stop" | "continue" | "silentlyContinue"
 1128
 1129			// Fail on Standard Error
 1130			"FailOnStandardError"?: bool
 1131
 1132			// Restrict scope of context to current task
 1133			"RestrictContextToCurrentTask"?: bool
 1134
 1135			// Azure PowerShell Version
 1136			"azurePowerShellVersion"?: "LatestVersion" | "OtherVersion"
 1137
 1138			// Preferred Azure PowerShell Version
 1139			"preferredAzurePowerShellVersion"?: string
 1140
 1141			// Use PowerShell Core
 1142			"pwsh"?: bool
 1143
 1144			// Validate script signature
 1145			"validateScriptSignature"?: bool
 1146
 1147			// Working Directory
 1148			"workingDirectory"?: string
 1149		})
 1150		...
 1151	}, {
 1152		// Azure PowerShell
 1153		//
 1154		// Run a PowerShell script within an Azure environment
 1155		"task"!: null | bool | number | =~"^AzurePowerShell@1$" | [...] | {
 1156			...
 1157		}
 1158
 1159		// Azure PowerShell inputs
 1160		"inputs"?: null | bool | number | string | [...] | close({
 1161			// Azure Connection Type
 1162			"ConnectedServiceNameSelector"?: "ConnectedServiceName" | "ConnectedServiceNameARM"
 1163
 1164			// Azure Classic Subscription
 1165			"ConnectedServiceName"?: string
 1166
 1167			// Azure Subscription
 1168			"ConnectedServiceNameARM"?: string
 1169
 1170			// Script Type
 1171			"ScriptType"?: "FilePath" | "InlineScript"
 1172
 1173			// Script Path
 1174			"ScriptPath"?: string
 1175
 1176			// Inline Script
 1177			"Inline"?: string
 1178
 1179			// Script Arguments
 1180			"ScriptArguments"?: string
 1181		})
 1182		...
 1183	}, {
 1184		// Azure PowerShell
 1185		//
 1186		// Run a PowerShell script within an Azure environment
 1187		"task"!: null | bool | number | =~"^AzurePowerShell@2$" | [...] | {
 1188			...
 1189		}
 1190
 1191		// Azure PowerShell inputs
 1192		"inputs"?: null | bool | number | string | [...] | close({
 1193			// Azure Connection Type
 1194			"azureConnectionType"?: "ConnectedServiceName" | "ConnectedServiceNameARM"
 1195
 1196			// Azure Classic Subscription
 1197			"azureClassicSubscription"?: string
 1198
 1199			// Azure Subscription
 1200			"azureSubscription"?: string
 1201
 1202			// Script Type
 1203			"ScriptType"?: "FilePath" | "InlineScript"
 1204
 1205			// Script Path
 1206			"ScriptPath"?: string
 1207
 1208			// Inline Script
 1209			"Inline"?: string
 1210
 1211			// Script Arguments
 1212			"ScriptArguments"?: string
 1213
 1214			// Azure PowerShell Version
 1215			"azurePowerShellVersion"?: "LatestVersion" | "OtherVersion"
 1216
 1217			// Preferred Azure PowerShell Version
 1218			"preferredAzurePowerShellVersion"?: string
 1219		})
 1220		...
 1221	}, {
 1222		// Azure PowerShell
 1223		//
 1224		// Run a PowerShell script within an Azure environment
 1225		"task"!: null | bool | number | =~"^AzurePowerShell@3$" | [...] | {
 1226			...
 1227		}
 1228
 1229		// Azure PowerShell inputs
 1230		"inputs"?: null | bool | number | string | [...] | close({
 1231			// Azure Connection Type
 1232			"azureConnectionType"?: "ConnectedServiceName" | "ConnectedServiceNameARM"
 1233
 1234			// Azure Classic Subscription
 1235			"azureClassicSubscription"?: string
 1236
 1237			// Azure Subscription
 1238			"azureSubscription"?: string
 1239
 1240			// Script Type
 1241			"ScriptType"?: "FilePath" | "InlineScript"
 1242
 1243			// Script Path
 1244			"ScriptPath"?: string
 1245
 1246			// Inline Script
 1247			"Inline"?: string
 1248
 1249			// Script Arguments
 1250			"ScriptArguments"?: string
 1251
 1252			// ErrorActionPreference
 1253			"errorActionPreference"?: "stop" | "continue" | "silentlyContinue"
 1254
 1255			// Fail on Standard Error
 1256			"FailOnStandardError"?: bool
 1257
 1258			// Azure PowerShell Version
 1259			"azurePowerShellVersion"?: "LatestVersion" | "OtherVersion"
 1260
 1261			// Preferred Azure PowerShell Version
 1262			"preferredAzurePowerShellVersion"?: string
 1263
 1264			// Validate script signature
 1265			"validateScriptSignature"?: bool
 1266		})
 1267		...
 1268	}, {
 1269		// MySQL database deploy
 1270		//
 1271		// Run scripts and make changes to a MySQL Database
 1272		"task"!: null | bool | number | =~"^MysqlDeploymentOnMachineGroup@1$" | [...] | {
 1273			...
 1274		}
 1275
 1276		// MySQL database deploy inputs
 1277		"inputs"!: null | bool | number | string | [...] | close({
 1278			// Deploy MySql Using
 1279			"TaskNameSelector"?: "SqlTaskFile" | "InlineSqlTask"
 1280
 1281			// MySQL Script
 1282			"SqlFile"?: string
 1283
 1284			// Inline MySQL Script
 1285			"SqlInline"?: string
 1286
 1287			// Host Name
 1288			"ServerName"?: string
 1289
 1290			// Database Name
 1291			"DatabaseName"?: string
 1292
 1293			// MySQL User Name
 1294			"SqlUsername"!: string
 1295
 1296			// Password
 1297			"SqlPassword"!: string
 1298
 1299			// Additional Arguments
 1300			"SqlAdditionalArguments"?: string
 1301		})
 1302		...
 1303	}, {
 1304		// Python pip authenticate
 1305		//
 1306		// Authentication task for the pip client used for installing
 1307		// Python distributions
 1308		"task"!: null | bool | number | =~"^PipAuthenticate@1$" | [...] | {
 1309			...
 1310		}
 1311
 1312		// Python pip authenticate inputs
 1313		"inputs"?: null | bool | number | string | [...] | close({
 1314			// 'Azure DevOps' Service Connection
 1315			"azureDevOpsServiceConnection"?: string
 1316
 1317			// Azure Artifacts Feeds url.
 1318			"feedUrl"?: string
 1319
 1320			// My feeds (select below)
 1321			"artifactFeeds"?: string
 1322
 1323			// Feeds from external organizations
 1324			"pythonDownloadServiceConnections"?: string
 1325
 1326			// Don't set primary index URL
 1327			"onlyAddExtraIndex"?: bool
 1328		})
 1329		...
 1330	}, {
 1331		// Python pip authenticate
 1332		//
 1333		// Authentication task for the pip client used for installing
 1334		// Python distributions
 1335		"task"!: null | bool | number | =~"^PipAuthenticate@0$" | [...] | {
 1336			...
 1337		}
 1338
 1339		// Python pip authenticate inputs
 1340		"inputs"?: null | bool | number | string | [...] | close({
 1341			// My feeds (select below)
 1342			"artifactFeeds"?: string
 1343
 1344			// Feeds from external organizations
 1345			"externalFeeds"?: string
 1346		})
 1347		...
 1348	}, {
 1349		// Maven
 1350		//
 1351		// Build, test, and deploy with Apache Maven
 1352		"task"!: null | bool | number | =~"^Maven@4$" | [...] | {
 1353			...
 1354		}
 1355
 1356		// Maven inputs
 1357		"inputs"?: null | bool | number | string | [...] | close({
 1358			// Azure Resource Manager connection
 1359			"azureSubscription"?: string
 1360
 1361			// Maven POM file
 1362			"mavenPomFile"?: string
 1363
 1364			// Goal(s)
 1365			"goals"?: string
 1366
 1367			// Options
 1368			"options"?: string
 1369
 1370			// Publish to Azure Pipelines
 1371			"publishJUnitResults"?: bool
 1372
 1373			// Test results files
 1374			"testResultsFiles"?: string
 1375
 1376			// Test run title
 1377			"testRunTitle"?: string
 1378
 1379			// Allow broken symbolic links
 1380			"allowBrokenSymlinks"?: bool
 1381
 1382			// Code coverage tool
 1383			"codeCoverageToolOption"?: "None" | "Cobertura" | "JaCoCo"
 1384
 1385			// Class inclusion/exclusion filters
 1386			"codeCoverageClassFilter"?: string
 1387
 1388			// Class files directories
 1389			"codeCoverageClassFilesDirectories"?: string
 1390
 1391			// Source files directories
 1392			"codeCoverageSourceDirectories"?: string
 1393
 1394			// Fail when code coverage results are missing
 1395			"codeCoverageFailIfEmpty"?: bool
 1396
 1397			// Restore original pom.xml after task execution
 1398			"codeCoverageRestoreOriginalPomXml"?: bool
 1399
 1400			// Set JAVA_HOME by
 1401			"javaHomeOption"?: "JDKVersion" | "Path"
 1402
 1403			// JDK version
 1404			"jdkVersionOption"?: "default" | "1.21" | "1.17" | "1.11" | "1.10" | "1.9" | "1.8" | "1.7" | "1.6"
 1405
 1406			// JDK path
 1407			"jdkDirectory"?: string
 1408
 1409			// JDK architecture
 1410			"jdkArchitectureOption"?: "x86" | "x64"
 1411
 1412			// Maven version
 1413			"mavenVersionOption"?: "Default" | "Path"
 1414
 1415			// Maven path
 1416			"mavenDirectory"?: string
 1417
 1418			// Set M2_HOME variable
 1419			"mavenSetM2Home"?: bool
 1420
 1421			// Set MAVEN_OPTS to
 1422			"mavenOptions"?: string
 1423
 1424			// Authenticate with Artifacts feeds
 1425			"mavenAuthenticateFeed"?: bool
 1426
 1427			// Skip generating effective POM while authenticating with
 1428			// Artifacts feeds
 1429			"effectivePomSkip"?: bool
 1430
 1431			// Run SonarQube or SonarCloud analysis
 1432			"sonarQubeRunAnalysis"?: bool
 1433
 1434			// Use XML Jacoco reports for SonarQube analysis
 1435			"isJacocoCoverageReportXML"?: bool
 1436
 1437			// SonarQube scanner for Maven version
 1438			"sqMavenPluginVersionChoice"?: "latest" | "pom"
 1439
 1440			// Run Checkstyle
 1441			"checkStyleRunAnalysis"?: bool
 1442
 1443			// Run PMD
 1444			"pmdRunAnalysis"?: bool
 1445
 1446			// Run FindBugs
 1447			"findBugsRunAnalysis"?: bool
 1448
 1449			// Run SpotBugs analysis
 1450			"spotBugsRunAnalysis"?: bool
 1451
 1452			// Version number
 1453			"spotBugsVersion"?: string
 1454
 1455			// The goal for the spotbugs plugin
 1456			"spotBugsGoal"?: "spotbugs" | "check"
 1457
 1458			// Fail when bugs are found with spotbugs:check
 1459			"failWhenBugsFound"?: bool
 1460		})
 1461		...
 1462	}, {
 1463		// Maven
 1464		//
 1465		// Build, test, and deploy with Apache Maven
 1466		"task"!: null | bool | number | =~"^Maven@2$" | [...] | {
 1467			...
 1468		}
 1469
 1470		// Maven inputs
 1471		"inputs"?: null | bool | number | string | [...] | close({
 1472			// Maven POM file
 1473			"mavenPomFile"?: string
 1474
 1475			// Goal(s)
 1476			"goals"?: string
 1477
 1478			// Options
 1479			"options"?: string
 1480
 1481			// Publish to Azure Pipelines
 1482			"publishJUnitResults"?: bool
 1483
 1484			// Test results files
 1485			"testResultsFiles"?: string
 1486
 1487			// Test run title
 1488			"testRunTitle"?: string
 1489
 1490			// Allow broken symbolic links
 1491			"allowBrokenSymlinks"?: bool
 1492
 1493			// Code coverage tool
 1494			"codeCoverageToolOption"?: "None" | "Cobertura" | "JaCoCo"
 1495
 1496			// Class inclusion/exclusion filters
 1497			"codeCoverageClassFilter"?: string
 1498
 1499			// Class files directories
 1500			"codeCoverageClassFilesDirectories"?: string
 1501
 1502			// Source files directories
 1503			"codeCoverageSourceDirectories"?: string
 1504
 1505			// Fail when code coverage results are missing
 1506			"codeCoverageFailIfEmpty"?: bool
 1507
 1508			// Restore original pom.xml after task execution
 1509			"codeCoverageRestoreOriginalPomXml"?: bool
 1510
 1511			// Set JAVA_HOME by
 1512			"javaHomeOption"?: "JDKVersion" | "Path"
 1513
 1514			// JDK version
 1515			"jdkVersionOption"?: "default" | "1.21" | "1.17" | "1.11" | "1.10" | "1.9" | "1.8" | "1.7" | "1.6"
 1516
 1517			// JDK path
 1518			"jdkDirectory"?: string
 1519
 1520			// JDK architecture
 1521			"jdkArchitectureOption"?: "x86" | "x64"
 1522
 1523			// Maven version
 1524			"mavenVersionOption"?: "Default" | "Path"
 1525
 1526			// Maven path
 1527			"mavenDirectory"?: string
 1528
 1529			// Set M2_HOME variable
 1530			"mavenSetM2Home"?: bool
 1531
 1532			// Set MAVEN_OPTS to
 1533			"mavenOptions"?: string
 1534
 1535			// Authenticate with Artifacts feeds
 1536			"mavenAuthenticateFeed"?: bool
 1537
 1538			// Run SonarQube or SonarCloud analysis
 1539			"sonarQubeRunAnalysis"?: bool
 1540
 1541			// Use XML Jacoco reports for SonarQube analysis
 1542			"isJacocoCoverageReportXML"?: bool
 1543
 1544			// SonarQube scanner for Maven version
 1545			"sqMavenPluginVersionChoice"?: "latest" | "pom"
 1546
 1547			// Run Checkstyle
 1548			"checkStyleRunAnalysis"?: bool
 1549
 1550			// Run PMD
 1551			"pmdRunAnalysis"?: bool
 1552
 1553			// Run FindBugs
 1554			"findBugsRunAnalysis"?: bool
 1555		})
 1556		...
 1557	}, {
 1558		// Maven
 1559		//
 1560		// Build, test, and deploy with Apache Maven
 1561		"task"!: null | bool | number | =~"^Maven@3$" | [...] | {
 1562			...
 1563		}
 1564
 1565		// Maven inputs
 1566		"inputs"?: null | bool | number | string | [...] | close({
 1567			// Maven POM file
 1568			"mavenPomFile"?: string
 1569
 1570			// Goal(s)
 1571			"goals"?: string
 1572
 1573			// Options
 1574			"options"?: string
 1575
 1576			// Publish to Azure Pipelines
 1577			"publishJUnitResults"?: bool
 1578
 1579			// Test results files
 1580			"testResultsFiles"?: string
 1581
 1582			// Test run title
 1583			"testRunTitle"?: string
 1584
 1585			// Allow broken symbolic links
 1586			"allowBrokenSymlinks"?: bool
 1587
 1588			// Code coverage tool
 1589			"codeCoverageToolOption"?: "None" | "Cobertura" | "JaCoCo"
 1590
 1591			// Class inclusion/exclusion filters
 1592			"codeCoverageClassFilter"?: string
 1593
 1594			// Class files directories
 1595			"codeCoverageClassFilesDirectories"?: string
 1596
 1597			// Source files directories
 1598			"codeCoverageSourceDirectories"?: string
 1599
 1600			// Fail when code coverage results are missing
 1601			"codeCoverageFailIfEmpty"?: bool
 1602
 1603			// Restore original pom.xml after task execution
 1604			"codeCoverageRestoreOriginalPomXml"?: bool
 1605
 1606			// Set JAVA_HOME by
 1607			"javaHomeOption"?: "JDKVersion" | "Path"
 1608
 1609			// JDK version
 1610			"jdkVersionOption"?: "default" | "1.21" | "1.17" | "1.11" | "1.10" | "1.9" | "1.8" | "1.7" | "1.6"
 1611
 1612			// JDK path
 1613			"jdkDirectory"?: string
 1614
 1615			// JDK architecture
 1616			"jdkArchitectureOption"?: "x86" | "x64"
 1617
 1618			// Maven version
 1619			"mavenVersionOption"?: "Default" | "Path"
 1620
 1621			// Maven path
 1622			"mavenDirectory"?: string
 1623
 1624			// Set M2_HOME variable
 1625			"mavenSetM2Home"?: bool
 1626
 1627			// Set MAVEN_OPTS to
 1628			"mavenOptions"?: string
 1629
 1630			// Authenticate with Artifacts feeds
 1631			"mavenAuthenticateFeed"?: bool
 1632
 1633			// Skip generating effective POM while authenticating with
 1634			// Artifacts feeds
 1635			"effectivePomSkip"?: bool
 1636
 1637			// Run SonarQube or SonarCloud analysis
 1638			"sonarQubeRunAnalysis"?: bool
 1639
 1640			// Use XML Jacoco reports for SonarQube analysis
 1641			"isJacocoCoverageReportXML"?: bool
 1642
 1643			// SonarQube scanner for Maven version
 1644			"sqMavenPluginVersionChoice"?: "latest" | "pom"
 1645
 1646			// Run Checkstyle
 1647			"checkStyleRunAnalysis"?: bool
 1648
 1649			// Run PMD
 1650			"pmdRunAnalysis"?: bool
 1651
 1652			// Run FindBugs
 1653			"findBugsRunAnalysis"?: bool
 1654
 1655			// Run SpotBugs analysis
 1656			"spotBugsRunAnalysis"?: bool
 1657
 1658			// Version number
 1659			"spotBugsVersion"?: string
 1660
 1661			// The goal for the spotbugs plugin
 1662			"spotBugsGoal"?: "spotbugs" | "check"
 1663
 1664			// Fail when bugs are found with spotbugs:check
 1665			"failWhenBugsFound"?: bool
 1666		})
 1667		...
 1668	}, {
 1669		// Maven
 1670		//
 1671		// Build with Apache Maven
 1672		"task"!: null | bool | number | =~"^Maven@1$" | [...] | {
 1673			...
 1674		}
 1675
 1676		// Maven inputs
 1677		"inputs"?: null | bool | number | string | [...] | close({
 1678			// Maven POM file
 1679			"mavenPomFile"?: string
 1680
 1681			// Goal(s)
 1682			"goals"?: string
 1683
 1684			// Options
 1685			"options"?: string
 1686
 1687			// Publish to TFS/Team Services
 1688			"publishJUnitResults"?: bool
 1689
 1690			// Test Results Files
 1691			"testResultsFiles"?: string
 1692
 1693			// Test Run Title
 1694			"testRunTitle"?: string
 1695
 1696			// Code Coverage Tool
 1697			"codeCoverageToolOption"?: "None" | "Cobertura" | "JaCoCo"
 1698
 1699			// Class Inclusion/Exclusion Filters
 1700			"codeCoverageClassFilter"?: string
 1701
 1702			// Class Files Directories
 1703			"codeCoverageClassFilesDirectories"?: string
 1704
 1705			// Source Files Directories
 1706			"codeCoverageSourceDirectories"?: string
 1707
 1708			// Fail When Code Coverage Results Are Missing
 1709			"codeCoverageFailIfEmpty"?: bool
 1710
 1711			// Set JAVA_HOME by
 1712			"javaHomeOption"?: "JDKVersion" | "Path"
 1713
 1714			// JDK Version
 1715			"jdkVersionOption"?: "default" | "1.9" | "1.8" | "1.7" | "1.6"
 1716
 1717			// JDK Path
 1718			"jdkDirectory"?: string
 1719
 1720			// JDK Architecture
 1721			"jdkArchitectureOption"?: "x86" | "x64"
 1722
 1723			// Maven Version
 1724			"mavenVersionOption"?: "Default" | "Path"
 1725
 1726			// Maven Path
 1727			"mavenDirectory"?: string
 1728
 1729			// Set M2_HOME variable
 1730			"mavenSetM2Home"?: bool
 1731
 1732			// Set MAVEN_OPTS to
 1733			"mavenOptions"?: string
 1734
 1735			// Authenticate built-in Maven feeds
 1736			"mavenAuthenticateFeed"?: bool
 1737
 1738			// Run SonarQube Analysis
 1739			"sonarQubeRunAnalysis"?: bool
 1740
 1741			// SonarQube Endpoint
 1742			"sonarQubeServiceEndpoint"?: string
 1743
 1744			// SonarQube Project Name
 1745			"sonarQubeProjectName"?: string
 1746
 1747			// SonarQube Project Key
 1748			"sonarQubeProjectKey"?: string
 1749
 1750			// SonarQube Project Version
 1751			"sonarQubeProjectVersion"?: string
 1752
 1753			// The SonarQube server version is lower than 5.2
 1754			"sonarQubeSpecifyDB"?: bool
 1755
 1756			// Db Connection String
 1757			"sonarQubeDBUrl"?: string
 1758
 1759			// Db Username
 1760			"sonarQubeDBUsername"?: string
 1761
 1762			// Db User Password
 1763			"sonarQubeDBPassword"?: string
 1764
 1765			// Include full analysis report in the build summary (SQ 5.3+)
 1766			"sonarQubeIncludeFullReport"?: bool
 1767
 1768			// Fail the build on quality gate failure (SQ 5.3+)
 1769			"sonarQubeFailWhenQualityGateFails"?: bool
 1770
 1771			// Run Checkstyle
 1772			"checkStyleRunAnalysis"?: bool
 1773
 1774			// Run PMD
 1775			"pmdRunAnalysis"?: bool
 1776
 1777			// Run FindBugs
 1778			"findBugsRunAnalysis"?: bool
 1779		})
 1780		...
 1781	}, {
 1782		// .NET Core
 1783		//
 1784		// Build, test, package, or publish a dotnet application, or run a
 1785		// custom dotnet command
 1786		"task"!: null | bool | number | =~"^DotNetCoreCLI@2$" | [...] | {
 1787			...
 1788		}
 1789
 1790		// .NET Core inputs
 1791		"inputs"?: null | bool | number | string | [...] | close({
 1792			// Azure Resource Manager connection
 1793			"azureSubscription"?: string
 1794
 1795			// Command
 1796			"command"?: "build" | "push" | "pack" | "publish" | "restore" | "run" | "test" | "custom"
 1797
 1798			// Publish web projects
 1799			"publishWebProjects"?: bool
 1800
 1801			// Path to project(s) or solution(s)
 1802			"projects"?: string
 1803
 1804			// Custom command
 1805			"custom"?: string
 1806
 1807			// Arguments
 1808			"arguments"?: string
 1809
 1810			// Arguments
 1811			"restoreArguments"?: string
 1812
 1813			// Publish test results and code coverage
 1814			"publishTestResults"?: bool
 1815
 1816			// Test run title
 1817			"testRunTitle"?: string
 1818
 1819			// Zip published projects
 1820			"zipAfterPublish"?: bool
 1821
 1822			// Add project's folder name to publish path
 1823			"modifyOutputPath"?: bool
 1824
 1825			// Feeds to use
 1826			"feedsToUse"?: "select" | "config"
 1827
 1828			// Use packages from this Azure Artifacts feed. Select from the
 1829			// dropdown or enter [project name/]feed name.
 1830			"vstsFeed"?: string
 1831
 1832			// Use packages from NuGet.org
 1833			"includeNuGetOrg"?: bool
 1834
 1835			// Path to NuGet.config
 1836			"nugetConfigPath"?: string
 1837
 1838			// Credentials for feeds outside this organization/collection
 1839			"externalFeedCredentials"?: string
 1840
 1841			// Disable local cache
 1842			"noCache"?: bool
 1843
 1844			// Destination directory
 1845			"restoreDirectory"?: string
 1846
 1847			// Verbosity
 1848			"verbosityRestore"?: "-" | "Quiet" | "Minimal" | "Normal" | "Detailed" | "Diagnostic"
 1849
 1850			// Path to NuGet package(s) to publish
 1851			"packagesToPush"?: string
 1852
 1853			// Target feed location
 1854			"nuGetFeedType"?: "internal" | "external"
 1855
 1856			// Target feed
 1857			"publishVstsFeed"?: string
 1858
 1859			// Publish pipeline metadata
 1860			"publishPackageMetadata"?: bool
 1861
 1862			// NuGet server
 1863			"publishFeedCredentials"?: string
 1864
 1865			// Path to csproj or nuspec file(s) to pack
 1866			"packagesToPack"?: string
 1867
 1868			// Configuration to Package
 1869			"configuration"?: string
 1870
 1871			// Package Folder
 1872			"packDirectory"?: string
 1873
 1874			// Do not build
 1875			"nobuild"?: bool
 1876
 1877			// Include Symbols
 1878			"includesymbols"?: bool
 1879
 1880			// Include Source
 1881			"includesource"?: bool
 1882
 1883			// Automatic package versioning
 1884			"versioningScheme"?: "off" | "byPrereleaseNumber" | "byEnvVar" | "byBuildNumber"
 1885
 1886			// Environment variable
 1887			"versionEnvVar"?: string
 1888
 1889			// Major
 1890			"majorVersion"?: string
 1891
 1892			// Minor
 1893			"minorVersion"?: string
 1894
 1895			// Patch
 1896			"patchVersion"?: string
 1897
 1898			// Additional build properties
 1899			"buildProperties"?: string
 1900
 1901			// Verbosity
 1902			"verbosityPack"?: "-" | "Quiet" | "Minimal" | "Normal" | "Detailed" | "Diagnostic"
 1903
 1904			// Working directory
 1905			"workingDirectory"?: string
 1906
 1907			// Set timeout for package download request
 1908			"requestTimeout"?: int
 1909		})
 1910		...
 1911	}, {
 1912		// .NET Core (PREVIEW)
 1913		//
 1914		// Build, test and publish using dotnet core command-line.
 1915		"task"!: null | bool | number | =~"^DotNetCoreCLI@0$" | [...] | {
 1916			...
 1917		}
 1918
 1919		// .NET Core (PREVIEW) inputs
 1920		"inputs"?: null | bool | number | string | [...] | close({
 1921			// Command
 1922			"command"?: "build" | "publish" | "restore" | "test" | "run"
 1923
 1924			// Publish Web Projects
 1925			"publishWebProjects"?: bool
 1926
 1927			// Project(s)
 1928			"projects"?: string
 1929
 1930			// Arguments
 1931			"arguments"?: string
 1932
 1933			// Zip Published Projects
 1934			"zipAfterPublish"?: bool
 1935		})
 1936		...
 1937	}, {
 1938		// .NET Core
 1939		//
 1940		// Build, test and publish using dotnet core command-line.
 1941		"task"!: null | bool | number | =~"^DotNetCoreCLI@1$" | [...] | {
 1942			...
 1943		}
 1944
 1945		// .NET Core inputs
 1946		"inputs"?: null | bool | number | string | [...] | close({
 1947			// Command
 1948			"command"?: "build" | "publish" | "restore" | "test" | "run"
 1949
 1950			// Publish Web Projects
 1951			"publishWebProjects"?: bool
 1952
 1953			// Project(s)
 1954			"projects"?: string
 1955
 1956			// Arguments
 1957			"arguments"?: string
 1958
 1959			// Zip Published Projects
 1960			"zipAfterPublish"?: bool
 1961		})
 1962		...
 1963	}, {
 1964		// Xamarin Component Restore
 1965		//
 1966		// This task is deprecated. Use 'NuGet' instead.
 1967		"task"!: null | bool | number | =~"^XamarinComponentRestore@0$" | [...] | {
 1968			...
 1969		}
 1970
 1971		// Xamarin Component Restore inputs
 1972		"inputs"!: null | bool | number | string | [...] | close({
 1973			// Path to solution
 1974			"solutionFile"?: string
 1975
 1976			// Email
 1977			"email"!: string
 1978
 1979			// Password
 1980			"password"!: string
 1981		})
 1982		...
 1983	}, {
 1984		// Azure App Service deploy
 1985		//
 1986		// Deploy to Azure App Service a web, mobile, or API app using
 1987		// Docker, Java, .NET, .NET Core, Node.js, PHP, Python, or Ruby
 1988		"task"!: null | bool | number | =~"^AzureRmWebAppDeployment@4$" | [...] | {
 1989			...
 1990		}
 1991
 1992		// Azure App Service deploy inputs
 1993		"inputs"?: null | bool | number | string | [...] | close({
 1994			// Connection type
 1995			"ConnectionType"?: "AzureRM" | "PublishProfile"
 1996
 1997			// Azure subscription
 1998			"azureSubscription"?: string
 1999
 2000			// Publish profile path
 2001			"PublishProfilePath"?: string
 2002
 2003			// Publish profile password
 2004			"PublishProfilePassword"?: string
 2005
 2006			// App Service type
 2007			"appType"?: "webApp" | "webAppLinux" | "webAppContainer" | "webAppHyperVContainer" | "functionApp" | "functionAppLinux" | "functionAppContainer" | "apiApp" | "mobileApp"
 2008
 2009			// App Service name
 2010			"WebAppName"?: string
 2011
 2012			// Deploy to Slot or App Service Environment
 2013			"deployToSlotOrASE"?: bool
 2014
 2015			// Resource group
 2016			"ResourceGroupName"?: string
 2017
 2018			// Slot
 2019			"SlotName"?: string
 2020
 2021			// Registry or Namespace
 2022			"DockerNamespace"?: string
 2023
 2024			// Image
 2025			"DockerRepository"?: string
 2026
 2027			// Tag
 2028			"DockerImageTag"?: string
 2029
 2030			// Virtual application
 2031			"VirtualApplication"?: string
 2032
 2033			// Package or folder
 2034			"packageForLinux"?: string
 2035
 2036			// Runtime Stack
 2037			"RuntimeStack"?: string
 2038
 2039			// Runtime Stack
 2040			"RuntimeStackFunction"?: "DOTNET|2.2" | "DOTNET|3.1" | "JAVA|8" | "JAVA|11" | "NODE|8" | "NODE|10" | "NODE|12" | "NODE|14" | "NODE|20" | "NODE|22" | "PYTHON|3.6" | "PYTHON|3.7" | "PYTHON|3.8"
 2041
 2042			// Startup command
 2043			"StartupCommand"?: string
 2044
 2045			// Deployment script type
 2046			"ScriptType"?: "" | "Inline Script" | "File Path"
 2047
 2048			// Inline Script
 2049			"InlineScript"?: string
 2050
 2051			// Deployment script path
 2052			"ScriptPath"?: string
 2053
 2054			// Generate web.config parameters for Python, Node.js, Go and Java
 2055			// apps
 2056			"WebConfigParameters"?: string
 2057
 2058			// App settings
 2059			"AppSettings"?: string
 2060
 2061			// Configuration settings
 2062			"ConfigurationSettings"?: string
 2063
 2064			// Select deployment method
 2065			"enableCustomDeployment"?: bool
 2066
 2067			// Deployment method
 2068			"DeploymentType"?: "webDeploy" | "zipDeploy" | "runFromZip"
 2069
 2070			// Take App Offline
 2071			"TakeAppOfflineFlag"?: bool
 2072
 2073			// SetParameters file
 2074			"SetParametersFile"?: string
 2075
 2076			// Remove additional files at destination
 2077			"RemoveAdditionalFilesFlag"?: bool
 2078
 2079			// Exclude files from the App_Data folder
 2080			"ExcludeFilesFromAppDataFlag"?: bool
 2081
 2082			// Additional arguments
 2083			"AdditionalArguments"?: string
 2084
 2085			// Rename locked files
 2086			"RenameFilesFlag"?: bool
 2087
 2088			// XML transformation
 2089			"enableXmlTransform"?: bool
 2090
 2091			// XML variable substitution
 2092			"enableXmlVariableSubstitution"?: bool
 2093
 2094			// JSON variable substitution
 2095			"JSONFiles"?: string
 2096		})
 2097		...
 2098	}, {
 2099		// Azure App Service Deploy
 2100		//
 2101		// Update Azure App Service using Web Deploy / Kudu REST APIs
 2102		"task"!: null | bool | number | =~"^AzureRmWebAppDeployment@2$" | [...] | {
 2103			...
 2104		}
 2105
 2106		// Azure App Service Deploy inputs
 2107		"inputs"!: null | bool | number | string | [...] | close({
 2108			// Azure Subscription
 2109			"ConnectedServiceName"!: string
 2110
 2111			// App Service name
 2112			"WebAppName"!: string
 2113
 2114			// Deploy to slot
 2115			"DeployToSlotFlag"?: bool
 2116
 2117			// Resource group
 2118			"ResourceGroupName"?: string
 2119
 2120			// Slot
 2121			"SlotName"?: string
 2122
 2123			// Virtual Application
 2124			"VirtualApplication"?: string
 2125
 2126			// Package or Folder
 2127			"Package"?: string
 2128
 2129			// App Service URL
 2130			"WebAppUri"?: string
 2131
 2132			// Publish using Web Deploy
 2133			"UseWebDeploy"?: bool
 2134
 2135			// SetParameters File
 2136			"SetParametersFile"?: string
 2137
 2138			// Remove Additional Files at Destination
 2139			"RemoveAdditionalFilesFlag"?: bool
 2140
 2141			// Exclude Files from the App_Data Folder
 2142			"ExcludeFilesFromAppDataFlag"?: bool
 2143
 2144			// Additional Arguments
 2145			"AdditionalArguments"?: string
 2146
 2147			// Take App Offline
 2148			"TakeAppOfflineFlag"?: bool
 2149		})
 2150		...
 2151	}, {
 2152		// Azure App Service deploy
 2153		//
 2154		// Deploy to Azure App Service a web, mobile, or API app using
 2155		// Docker, Java, .NET, .NET Core, Node.js, PHP, Python, or Ruby
 2156		"task"!: null | bool | number | =~"^AzureRmWebAppDeployment@5$" | [...] | {
 2157			...
 2158		}
 2159
 2160		// Azure App Service deploy inputs
 2161		"inputs"?: null | bool | number | string | [...] | close({
 2162			// Connection type
 2163			"ConnectionType"?: "AzureRM" | "PublishProfile"
 2164
 2165			// Azure subscription
 2166			"azureSubscription"?: string
 2167
 2168			// Publish profile path
 2169			"PublishProfilePath"?: string
 2170
 2171			// Publish profile password
 2172			"PublishProfilePassword"?: string
 2173
 2174			// App Service type
 2175			"appType"?: "webApp" | "webAppLinux" | "webAppContainer" | "webAppHyperVContainer" | "functionApp" | "functionAppLinux" | "functionAppContainer" | "apiApp" | "mobileApp"
 2176
 2177			// App Service name
 2178			"WebAppName"?: string
 2179
 2180			// Deploy to Slot or App Service Environment
 2181			"deployToSlotOrASE"?: bool
 2182
 2183			// Resource group
 2184			"ResourceGroupName"?: string
 2185
 2186			// Slot
 2187			"SlotName"?: string
 2188
 2189			// Registry or Namespace
 2190			"DockerNamespace"?: string
 2191
 2192			// Image
 2193			"DockerRepository"?: string
 2194
 2195			// Tag
 2196			"DockerImageTag"?: string
 2197
 2198			// Virtual application
 2199			"VirtualApplication"?: string
 2200
 2201			// Package or folder
 2202			"packageForLinux"?: string
 2203
 2204			// Runtime Stack
 2205			"RuntimeStack"?: "DOTNETCORE|9.0" | "DOTNETCORE|8.0" | "DOTNETCORE|7.0" | "DOTNETCORE|6.0" | "NODE|22-lts" | "NODE|20-lts" | "NODE|18-lts" | "NODE|16-lts" | "PYTHON|3.13" | "PYTHON|3.12" | "PYTHON|3.11" | "PYTHON|3.10" | "PYTHON|3.9" | "PYTHON|3.8" | "PHP|8.3" | "PHP|8.2" | "PHP|8.1" | "PHP|8.0" | "JAVA|21-java21" | "JAVA|17-java17" | "JAVA|11-java11" | "JAVA|8-jre8" | "JBOSSEAP|8-java17" | "JBOSSEAP|8-java11" | "JBOSSEAP|7-java17" | "JBOSSEAP|7-java11" | "JBOSSEAP|7-java8" | "TOMCAT|10.1-java21" | "TOMCAT|10.1-java17" | "TOMCAT|10.1-java11" | "TOMCAT|10.0-java17" | "TOMCAT|10.0-java11" | "TOMCAT|10.0-jre8" | "TOMCAT|9.0-java21" | "TOMCAT|9.0-java17" | "TOMCAT|9.0-java11" | "TOMCAT|9.0-jre8" | "TOMCAT|8.5-java11" | "TOMCAT|8.5-jre8"
 2206
 2207			// Runtime Stack
 2208			"RuntimeStackFunction"?: "DOTNET|2.2" | "DOTNET|3.1" | "JAVA|8" | "JAVA|11" | "NODE|8" | "NODE|10" | "NODE|12" | "NODE|14" | "NODE|20" | "NODE|22" | "PYTHON|3.6" | "PYTHON|3.7" | "PYTHON|3.8"
 2209
 2210			// Startup command
 2211			"StartupCommand"?: string
 2212
 2213			// Deployment script type
 2214			"ScriptType"?: "" | "Inline Script" | "File Path"
 2215
 2216			// Inline Script
 2217			"InlineScript"?: string
 2218
 2219			// Deployment script path
 2220			"ScriptPath"?: string
 2221
 2222			// Generate web.config parameters for Python, Node.js, Go and Java
 2223			// apps
 2224			"WebConfigParameters"?: string
 2225
 2226			// App settings
 2227			"AppSettings"?: string
 2228
 2229			// Configuration settings
 2230			"ConfigurationSettings"?: string
 2231
 2232			// Select deployment method
 2233			"enableCustomDeployment"?: bool
 2234
 2235			// Deployment method
 2236			"DeploymentType"?: "webDeploy" | "zipDeploy" | "runFromZip"
 2237
 2238			// Take App Offline
 2239			"TakeAppOfflineFlag"?: bool
 2240
 2241			// SetParameters file
 2242			"SetParametersFile"?: string
 2243
 2244			// Remove additional files at destination
 2245			"RemoveAdditionalFilesFlag"?: bool
 2246
 2247			// Exclude files from the App_Data folder
 2248			"ExcludeFilesFromAppDataFlag"?: bool
 2249
 2250			// Additional arguments
 2251			"AdditionalArguments"?: string
 2252
 2253			// Rename locked files
 2254			"RenameFilesFlag"?: bool
 2255
 2256			// XML transformation
 2257			"enableXmlTransform"?: bool
 2258
 2259			// XML variable substitution
 2260			"enableXmlVariableSubstitution"?: bool
 2261
 2262			// JSON variable substitution
 2263			"JSONFiles"?: string
 2264
 2265			// Deployment method
 2266			"DeploymentTypeLinux"?: "oneDeploy" | "zipDeploy"
 2267
 2268			// Enable clean deployment
 2269			"CleanDeploymentFlag"?: bool
 2270		})
 2271		...
 2272	}, {
 2273		// Azure App Service deploy
 2274		//
 2275		// Deploy to Azure App Service a web, mobile, or API app using
 2276		// Docker, Java, .NET, .NET Core, Node.js, PHP, Python, or Ruby
 2277		"task"!: null | bool | number | =~"^AzureRmWebAppDeployment@3$" | [...] | {
 2278			...
 2279		}
 2280
 2281		// Azure App Service deploy inputs
 2282		"inputs"!: null | bool | number | string | [...] | close({
 2283			// Azure subscription
 2284			"azureSubscription"!: string
 2285
 2286			// App type
 2287			"appType"?: "app" | "applinux" | "functionapp" | "api" | "mobileapp"
 2288
 2289			// App Service name
 2290			"WebAppName"!: string
 2291
 2292			// Deploy to slot
 2293			"DeployToSlotFlag"?: bool
 2294
 2295			// Resource group
 2296			"ResourceGroupName"?: string
 2297
 2298			// Slot
 2299			"SlotName"?: string
 2300
 2301			// Image Source
 2302			"ImageSource"?: "Registry" | "Builtin"
 2303
 2304			// Registry
 2305			"AzureContainerRegistry"?: string
 2306
 2307			// Registry Login Server Name
 2308			"AzureContainerRegistryLoginServer"?: string
 2309
 2310			// Image
 2311			"AzureContainerRegistryImage"?: string
 2312
 2313			// Tag
 2314			"AzureContainerRegistryTag"?: string
 2315
 2316			// Repository Access
 2317			"DockerRepositoryAccess"?: "private" | "public"
 2318
 2319			// Registry Connection
 2320			"dockerRegistryConnection"?: string
 2321
 2322			// Image
 2323			"PrivateRegistryImage"?: string
 2324
 2325			// Tag
 2326			"PrivateRegistryTag"?: string
 2327
 2328			// Registry or Namespace
 2329			"DockerNamespace"?: string
 2330
 2331			// Image
 2332			"DockerRepository"?: string
 2333
 2334			// Tag
 2335			"DockerImageTag"?: string
 2336
 2337			// Virtual application
 2338			"VirtualApplication"?: string
 2339
 2340			// Package or folder
 2341			"Package"?: string
 2342
 2343			// Package or folder
 2344			"packageForLinux"?: string
 2345
 2346			// Runtime Stack
 2347			"RuntimeStack"?: string
 2348
 2349			// Startup command
 2350			"StartupCommand"?: string
 2351
 2352			// App Service URL
 2353			"WebAppUri"?: string
 2354
 2355			// Deployment script type
 2356			"ScriptType"?: "" | "Inline Script" | "File Path"
 2357
 2358			// Inline Script
 2359			"InlineScript"?: string
 2360
 2361			// Deployment script path
 2362			"ScriptPath"?: string
 2363
 2364			// Generate Web.config
 2365			"GenerateWebConfig"?: bool
 2366
 2367			// Web.config parameters
 2368			"WebConfigParameters"?: string
 2369
 2370			// App settings
 2371			"AppSettings"?: string
 2372
 2373			// Configuration settings
 2374			"ConfigurationSettings"?: string
 2375
 2376			// Take App Offline
 2377			"TakeAppOfflineFlag"?: bool
 2378
 2379			// Publish using Web Deploy
 2380			"UseWebDeploy"?: bool
 2381
 2382			// SetParameters file
 2383			"SetParametersFile"?: string
 2384
 2385			// Remove additional files at destination
 2386			"RemoveAdditionalFilesFlag"?: bool
 2387
 2388			// Exclude files from the App_Data folder
 2389			"ExcludeFilesFromAppDataFlag"?: bool
 2390
 2391			// Additional arguments
 2392			"AdditionalArguments"?: string
 2393
 2394			// Rename locked files
 2395			"RenameFilesFlag"?: bool
 2396
 2397			// XML transformation
 2398			"enableXmlTransform"?: bool
 2399
 2400			// XML variable substitution
 2401			"enableXmlVariableSubstitution"?: bool
 2402
 2403			// JSON variable substitution
 2404			"JSONFiles"?: string
 2405		})
 2406		...
 2407	}, {
 2408		// PowerShell on target machines
 2409		//
 2410		// Execute PowerShell scripts on remote machines using PSSession
 2411		// and Invoke-Command for remoting
 2412		"task"!: null | bool | number | =~"^PowerShellOnTargetMachines@3$" | [...] | {
 2413			...
 2414		}
 2415
 2416		// PowerShell on target machines inputs
 2417		"inputs"!: null | bool | number | string | [...] | close({
 2418			// Machines
 2419			"Machines"!: string
 2420
 2421			// Username
 2422			"UserName"?: string
 2423
 2424			// Password
 2425			"UserPassword"?: string
 2426
 2427			// Script Type
 2428			"ScriptType"?: "FilePath" | "Inline"
 2429
 2430			// Script File Path
 2431			"ScriptPath"?: string
 2432
 2433			// Script
 2434			"InlineScript"?: string
 2435
 2436			// Script Arguments
 2437			"ScriptArguments"?: string
 2438
 2439			// Initialization script
 2440			"InitializationScript"?: string
 2441
 2442			// Session Variables
 2443			"SessionVariables"?: string
 2444
 2445			// Protocol
 2446			"CommunicationProtocol"?: "Http" | "Https"
 2447
 2448			// Authentication
 2449			"AuthenticationMechanism"?: "Default" | "Credssp"
 2450
 2451			// Session Option parameters
 2452			"NewPsSessionOptionArguments"?: string
 2453
 2454			// ErrorActionPreference
 2455			"ErrorActionPreference"?: "stop" | "continue" | "silentlyContinue"
 2456
 2457			// Fail on Standard Error
 2458			"failOnStderr"?: bool
 2459
 2460			// Ignore $LASTEXITCODE
 2461			"ignoreLASTEXITCODE"?: bool
 2462
 2463			// Working Directory
 2464			"WorkingDirectory"?: string
 2465
 2466			// Run PowerShell in Parallel
 2467			"RunPowershellInParallel"?: bool
 2468		})
 2469		...
 2470	}, {
 2471		// PowerShell on Target Machines
 2472		//
 2473		// Execute PowerShell scripts on remote machine(s)
 2474		"task"!: null | bool | number | =~"^PowerShellOnTargetMachines@1$" | [...] | {
 2475			...
 2476		}
 2477
 2478		// PowerShell on Target Machines inputs
 2479		"inputs"!: null | bool | number | string | [...] | close({
 2480			// Machines
 2481			"EnvironmentName"!: string
 2482
 2483			// Admin Login
 2484			"AdminUserName"?: string
 2485
 2486			// Password
 2487			"AdminPassword"?: string
 2488
 2489			// Protocol
 2490			"Protocol"?: "Http" | "Https"
 2491
 2492			// Test Certificate
 2493			"TestCertificate"?: bool
 2494
 2495			// PowerShell Script
 2496			"ScriptPath"!: string
 2497
 2498			// Script Arguments
 2499			"ScriptArguments"?: string
 2500
 2501			// Initialization Script
 2502			"InitializationScriptPath"?: string
 2503
 2504			// Session Variables
 2505			"SessionVariables"?: string
 2506
 2507			// Run PowerShell in Parallel
 2508			"RunPowershellInParallel"?: bool
 2509
 2510			// Select Machines By
 2511			"ResourceFilteringMethod"?: "machineNames" | "tags"
 2512
 2513			// Filter Criteria
 2514			"MachineNames"?: string
 2515		})
 2516		...
 2517	}, {
 2518		// PowerShell on Target Machines
 2519		//
 2520		// Execute PowerShell scripts on remote machine(s)
 2521		"task"!: null | bool | number | =~"^PowerShellOnTargetMachines@2$" | [...] | {
 2522			...
 2523		}
 2524
 2525		// PowerShell on Target Machines inputs
 2526		"inputs"!: null | bool | number | string | [...] | close({
 2527			// Machines
 2528			"EnvironmentName"!: string
 2529
 2530			// Admin Login
 2531			"AdminUserName"?: string
 2532
 2533			// Password
 2534			"AdminPassword"?: string
 2535
 2536			// Protocol
 2537			"Protocol"?: "Http" | "Https"
 2538
 2539			// Test Certificate
 2540			"TestCertificate"?: bool
 2541
 2542			// PowerShell Script
 2543			"ScriptPath"!: string
 2544
 2545			// Script Arguments
 2546			"ScriptArguments"?: string
 2547
 2548			// Initialization Script
 2549			"InitializationScriptPath"?: string
 2550
 2551			// Session Variables
 2552			"SessionVariables"?: string
 2553
 2554			// Run PowerShell in Parallel
 2555			"RunPowershellInParallel"?: bool
 2556
 2557			// Select Machines By
 2558			"ResourceFilteringMethod"?: "machineNames" | "tags"
 2559
 2560			// Filter Criteria
 2561			"MachineNames"?: string
 2562		})
 2563		...
 2564	}, {
 2565		// Publish code coverage
 2566		//
 2567		// Publish Cobertura or JaCoCo code coverage results from a build
 2568		"task"!: null | bool | number | =~"^PublishCodeCoverageResults@1$" | [...] | {
 2569			...
 2570		}
 2571
 2572		// Publish code coverage inputs
 2573		"inputs"!: null | bool | number | string | [...] | close({
 2574			// Code coverage tool
 2575			"codeCoverageTool"?: "Cobertura" | "JaCoCo"
 2576
 2577			// Summary file
 2578			"summaryFileLocation"!: string
 2579
 2580			// Path to Source files
 2581			"pathToSources"?: string
 2582
 2583			// Report directory
 2584			"reportDirectory"?: string
 2585
 2586			// Additional files
 2587			"additionalCodeCoverageFiles"?: string
 2588
 2589			// Fail when code coverage results are missing
 2590			"failIfCoverageEmpty"?: bool
 2591		})
 2592		...
 2593	}, {
 2594		// Run functional tests
 2595		//
 2596		// Deprecated: This task and it’s companion task (Visual Studio
 2597		// Test Agent Deployment) are deprecated. Use the 'Visual Studio
 2598		// Test' task instead. The VSTest task can run unit as well as
 2599		// functional tests. Run tests on one or more agents using the
 2600		// multi-agent job setting. Use the 'Visual Studio Test Platform'
 2601		// task to run tests without needing Visual Studio on the agent.
 2602		// VSTest task also brings new capabilities such as automatically
 2603		// rerunning failed tests.
 2604		"task"!: null | bool | number | =~"^RunVisualStudioTestsusingTestAgent@1$" | [...] | {
 2605			...
 2606		}
 2607
 2608		// Run functional tests inputs
 2609		"inputs"!: null | bool | number | string | [...] | close({
 2610			// Machines
 2611			"testMachineGroup"!: string
 2612
 2613			// Test Drop Location
 2614			"dropLocation"!: string
 2615
 2616			// Test Selection
 2617			"testSelection"?: "testAssembly" | "testPlan"
 2618
 2619			// Test Plan
 2620			"testPlan"?: string
 2621
 2622			// Test Suite
 2623			"testSuite"?: string
 2624
 2625			// Test Configuration
 2626			"testConfiguration"?: string
 2627
 2628			// Test Assembly
 2629			"sourcefilters"?: string
 2630
 2631			// Test Filter criteria
 2632			"testFilterCriteria"?: string
 2633
 2634			// Run Settings File
 2635			"runSettingsFile"?: string
 2636
 2637			// Override Test Run Parameters
 2638			"overrideRunParams"?: string
 2639
 2640			// Code Coverage Enabled
 2641			"codeCoverageEnabled"?: bool
 2642
 2643			// Distribute tests by number of machines
 2644			"customSlicingEnabled"?: bool
 2645
 2646			// Test Run Title
 2647			"testRunTitle"?: string
 2648
 2649			// Platform
 2650			"platform"?: string
 2651
 2652			// Configuration
 2653			"configuration"?: string
 2654
 2655			// Test Configurations
 2656			"testConfigurations"?: string
 2657
 2658			// Application Under Test Machines
 2659			"autMachineGroup"?: string
 2660		})
 2661		...
 2662	}, {
 2663		// Manual intervention
 2664		//
 2665		// Pause deployment and wait for manual intervention
 2666		"task"!: null | bool | number | =~"^ManualIntervention@8$" | [...] | {
 2667			...
 2668		}
 2669
 2670		// Manual intervention inputs
 2671		"inputs"?: null | bool | number | string | [...] | close({
 2672			// Instructions
 2673			"instructions"?: string
 2674
 2675			// Notify users
 2676			"emailRecipients"?: string
 2677
 2678			// On timeout
 2679			"onTimeout"?: "reject" | "resume"
 2680		})
 2681		...
 2682	}, {
 2683		// Install Apple provisioning profile
 2684		//
 2685		// Install an Apple provisioning profile required to build on a
 2686		// macOS agent machine
 2687		"task"!: null | bool | number | =~"^InstallAppleProvisioningProfile@1$" | [...] | {
 2688			...
 2689		}
 2690
 2691		// Install Apple provisioning profile inputs
 2692		"inputs"?: null | bool | number | string | [...] | close({
 2693			// Provisioning profile location
 2694			"provisioningProfileLocation"?: "secureFiles" | "sourceRepository"
 2695
 2696			// Provisioning profile
 2697			"provProfileSecureFile"?: string
 2698
 2699			// Provisioning profile
 2700			"provProfileSourceRepository"?: string
 2701
 2702			// Remove profile after build
 2703			"removeProfile"?: bool
 2704		})
 2705		...
 2706	}, {
 2707		// Install Apple Provisioning Profile
 2708		//
 2709		// Install an Apple provisioning profile required to build on a
 2710		// macOS agent
 2711		"task"!: null | bool | number | =~"^InstallAppleProvisioningProfile@0$" | [...] | {
 2712			...
 2713		}
 2714
 2715		// Install Apple Provisioning Profile inputs
 2716		"inputs"!: null | bool | number | string | [...] | close({
 2717			// Provisioning Profile
 2718			"provProfileSecureFile"!: string
 2719
 2720			// Remove Profile After Build
 2721			"removeProfile"?: bool
 2722		})
 2723		...
 2724	}, {
 2725		// SonarQube for MSBuild - End Analysis
 2726		//
 2727		// [DEPRECATED] Finish the analysis and upload the results to
 2728		// SonarQube
 2729		"task"!: null | bool | number | =~"^SonarQubePostTest@1$" | [...] | {
 2730			...
 2731		}
 2732
 2733		// SonarQube for MSBuild - End Analysis inputs
 2734		"inputs"?: null | bool | number | string | [...] | close({})
 2735		...
 2736	}, {
 2737		// PyPI publisher
 2738		//
 2739		// Create and upload an sdist or wheel to a PyPI-compatible index
 2740		// using Twine
 2741		"task"!: null | bool | number | =~"^PyPIPublisher@0$" | [...] | {
 2742			...
 2743		}
 2744
 2745		// PyPI publisher inputs
 2746		"inputs"!: null | bool | number | string | [...] | close({
 2747			// PyPI service connection
 2748			"pypiConnection"!: string
 2749
 2750			// Python package directory
 2751			"packageDirectory"!: string
 2752
 2753			// Also publish a wheel
 2754			"alsoPublishWheel"?: bool
 2755		})
 2756		...
 2757	}, {
 2758		// Chef Knife
 2759		//
 2760		// Run scripts with Knife commands on your Chef workstation
 2761		"task"!: null | bool | number | =~"^ChefKnife@1$" | [...] | {
 2762			...
 2763		}
 2764
 2765		// Chef Knife inputs
 2766		"inputs"!: null | bool | number | string | [...] | close({
 2767			// Chef Subscription
 2768			"ConnectedServiceName"!: string
 2769
 2770			// Script Path
 2771			"ScriptPath"!: string
 2772
 2773			// Script Arguments
 2774			"ScriptArguments"?: string
 2775		})
 2776		...
 2777	}, {
 2778		// Go tool installer
 2779		//
 2780		// Find in cache or download a specific version of Go and add it
 2781		// to the PATH
 2782		"task"!: null | bool | number | =~"^GoTool@0$" | [...] | {
 2783			...
 2784		}
 2785
 2786		// Go tool installer inputs
 2787		"inputs"?: null | bool | number | string | [...] | close({
 2788			// Version
 2789			"version"?: string
 2790
 2791			// GOPATH
 2792			"goPath"?: string
 2793
 2794			// GOBIN
 2795			"goBin"?: string
 2796		})
 2797		...
 2798	}, {
 2799		// Xcode Package iOS
 2800		//
 2801		// Generate an .ipa file from Xcode build output using xcrun
 2802		// (Xcode 7 or below)
 2803		"task"!: null | bool | number | =~"^XcodePackageiOS@0$" | [...] | {
 2804			...
 2805		}
 2806
 2807		// Xcode Package iOS inputs
 2808		"inputs"!: null | bool | number | string | [...] | close({
 2809			// Name of .app
 2810			"appName"?: string
 2811
 2812			// Name of .ipa
 2813			"ipaName"?: string
 2814
 2815			// Provisioning Profile Name
 2816			"provisioningProfile"!: string
 2817
 2818			// SDK
 2819			"sdk"?: string
 2820
 2821			// Path to .app
 2822			"appPath"?: string
 2823
 2824			// Path to place .ipa
 2825			"ipaPath"?: string
 2826		})
 2827		...
 2828	}, {
 2829		// Go
 2830		//
 2831		// Get, build, or test a Go application, or run a custom Go
 2832		// command
 2833		"task"!: null | bool | number | =~"^Go@0$" | [...] | {
 2834			...
 2835		}
 2836
 2837		// Go inputs
 2838		"inputs"?: null | bool | number | string | [...] | close({
 2839			// Command
 2840			"command"?: "get" | "build" | "test" | "custom"
 2841
 2842			// Custom command
 2843			"customCommand"?: string
 2844
 2845			// Arguments
 2846			"arguments"?: string
 2847
 2848			// Working directory
 2849			"workingDirectory"?: string
 2850		})
 2851		...
 2852	}, {
 2853		// Publish Pipeline Metadata
 2854		//
 2855		// Publish Pipeline Metadata to Evidence store
 2856		"task"!: null | bool | number | =~"^PublishPipelineMetadata@0$" | [...] | {
 2857			...
 2858		}
 2859
 2860		// Publish Pipeline Metadata inputs
 2861		"inputs"?: null | bool | number | string | [...] | close({})
 2862		...
 2863	}, {
 2864		// Docker
 2865		//
 2866		// Build, tag, push, or run Docker images, or run a Docker command
 2867		"task"!: null | bool | number | =~"^Docker@0$" | [...] | {
 2868			...
 2869		}
 2870
 2871		// Docker inputs
 2872		"inputs"?: null | bool | number | string | [...] | close({
 2873			// Container Registry Type
 2874			"containerregistrytype"?: "Azure Container Registry" | "Container Registry"
 2875
 2876			// Docker Registry Service Connection
 2877			"dockerRegistryConnection"?: string
 2878
 2879			// Azure subscription
 2880			"azureSubscription"?: string
 2881
 2882			// Azure Container Registry
 2883			"azureContainerRegistry"?: string
 2884
 2885			// Action
 2886			"action"?: "Build an image" | "Tag images" | "Push an image" | "Push images" | "Run an image" | "Run a Docker command"
 2887
 2888			// Docker File
 2889			"dockerFile"?: string
 2890
 2891			// Add base image metadata to image(s)
 2892			"addBaseImageData"?: bool
 2893
 2894			// Build Arguments
 2895			"buildArguments"?: string
 2896
 2897			// Use Default Build Context
 2898			"defaultContext"?: bool
 2899
 2900			// Build Context
 2901			"context"?: string
 2902
 2903			// Image Name
 2904			"imageName"?: string
 2905
 2906			// Image Names Path
 2907			"imageNamesPath"?: string
 2908
 2909			// Qualify Image Name
 2910			"qualifyImageName"?: bool
 2911
 2912			// Additional Image Tags
 2913			"additionalImageTags"?: string
 2914
 2915			// Include Source Tags
 2916			"includeSourceTags"?: bool
 2917
 2918			// Include Latest Tag
 2919			"includeLatestTag"?: bool
 2920
 2921			// Image Digest File
 2922			"imageDigestFile"?: string
 2923
 2924			// Container Name
 2925			"containerName"?: string
 2926
 2927			// Ports
 2928			"ports"?: string
 2929
 2930			// Volumes
 2931			"volumes"?: string
 2932
 2933			// Environment Variables
 2934			"envVars"?: string
 2935
 2936			// Working Directory
 2937			"workDir"?: string
 2938
 2939			// Entry Point Override
 2940			"entrypoint"?: string
 2941
 2942			// Command
 2943			"containerCommand"?: string
 2944
 2945			// Run In Background
 2946			"detached"?: bool
 2947
 2948			// Restart Policy
 2949			"restartPolicy"?: "no" | "onFailure" | "always" | "unlessStopped"
 2950
 2951			// Maximum Restart Retries
 2952			"restartMaxRetries"?: string
 2953
 2954			// Command
 2955			"customCommand"?: string
 2956
 2957			// Docker Host Service Connection
 2958			"dockerHostEndpoint"?: string
 2959
 2960			// Force image name to follow Docker naming convention
 2961			"enforceDockerNamingConvention"?: bool
 2962
 2963			// Working Directory
 2964			"workingDirectory"?: string
 2965
 2966			// Memory limit
 2967			"memory"?: string
 2968		})
 2969		...
 2970	}, {
 2971		// Docker
 2972		//
 2973		// Build or push Docker images, login or logout, start or stop
 2974		// containers, or run a Docker command
 2975		"task"!: null | bool | number | =~"^Docker@2$" | [...] | {
 2976			...
 2977		}
 2978
 2979		// Docker inputs
 2980		"inputs"?: null | bool | number | string | [...] | close({
 2981			// Container registry
 2982			"containerRegistry"?: string
 2983
 2984			// Container repository
 2985			"repository"?: string
 2986
 2987			// Command
 2988			"command"?: "buildAndPush" | "build" | "push" | "login" | "logout" | "start" | "stop"
 2989
 2990			// Dockerfile
 2991			"Dockerfile"?: string
 2992
 2993			// Build context
 2994			"buildContext"?: string
 2995
 2996			// Tags
 2997			"tags"?: string
 2998
 2999			// Arguments
 3000			"arguments"?: string
 3001
 3002			// Add Pipeline metadata to image(s)
 3003			"addPipelineData"?: bool
 3004
 3005			// Add base image metadata to image(s)
 3006			"addBaseImageData"?: bool
 3007
 3008			// Container
 3009			"container"?: string
 3010		})
 3011		...
 3012	}, {
 3013		// Docker
 3014		//
 3015		// Build, tag, push, or run Docker images, or run a Docker command
 3016		"task"!: null | bool | number | =~"^Docker@1$" | [...] | {
 3017			...
 3018		}
 3019
 3020		// Docker inputs
 3021		"inputs"?: null | bool | number | string | [...] | close({
 3022			// Container registry type
 3023			"containerregistrytype"?: "Azure Container Registry" | "Container Registry"
 3024
 3025			// Add base image metadata to image(s)
 3026			"addBaseImageData"?: bool
 3027
 3028			// Docker registry service connection
 3029			"dockerRegistryEndpoint"?: string
 3030
 3031			// Azure subscription
 3032			"azureSubscriptionEndpoint"?: string
 3033
 3034			// Azure container registry
 3035			"azureContainerRegistry"?: string
 3036
 3037			// Command
 3038			"command"?: "Build an image" | "Tag image" | "Push an image" | "Run an image" | "login" | "logout"
 3039
 3040			// Dockerfile
 3041			"dockerFile"?: string
 3042
 3043			// Arguments
 3044			"arguments"?: string
 3045
 3046			// Push multiple images
 3047			"pushMultipleImages"?: bool
 3048
 3049			// Tag multiple images
 3050			"tagMultipleImages"?: bool
 3051
 3052			// Image name
 3053			"imageName"?: string
 3054
 3055			// Image names path
 3056			"imageNamesPath"?: string
 3057
 3058			// Qualify image name
 3059			"qualifyImageName"?: bool
 3060
 3061			// Qualify source image name
 3062			"qualifySourceImageName"?: bool
 3063
 3064			// Include source tags
 3065			"includeSourceTags"?: bool
 3066
 3067			// Include latest tag
 3068			"includeLatestTag"?: bool
 3069
 3070			// Add default labels
 3071			"addDefaultLabels"?: bool
 3072
 3073			// Use default build context
 3074			"useDefaultContext"?: bool
 3075
 3076			// Build context
 3077			"buildContext"?: string
 3078
 3079			// Image digest file
 3080			"imageDigestFile"?: string
 3081
 3082			// Container name
 3083			"containerName"?: string
 3084
 3085			// Ports
 3086			"ports"?: string
 3087
 3088			// Volumes
 3089			"volumes"?: string
 3090
 3091			// Environment variables
 3092			"envVars"?: string
 3093
 3094			// Working directory
 3095			"workingDirectory"?: string
 3096
 3097			// Entry point override
 3098			"entrypointOverride"?: string
 3099
 3100			// Container command
 3101			"containerCommand"?: string
 3102
 3103			// Run in background
 3104			"runInBackground"?: bool
 3105
 3106			// Restart policy
 3107			"restartPolicy"?: "no" | "onFailure" | "always" | "unlessStopped"
 3108
 3109			// Maximum restart retries
 3110			"maxRestartRetries"?: string
 3111
 3112			// Docker host service connection
 3113			"dockerHostEndpoint"?: string
 3114
 3115			// Force image name to follow Docker naming convention
 3116			"enforceDockerNamingConvention"?: bool
 3117
 3118			// Memory limit
 3119			"memoryLimit"?: string
 3120		})
 3121		...
 3122	}, {
 3123		// Docker
 3124		//
 3125		// Build or push Docker images, login or logout, start or stop
 3126		// containers, or run a Docker command
 3127		"task"!: null | bool | number | =~"^Docker@2$" | [...] | {
 3128			...
 3129		}
 3130
 3131		// Docker inputs
 3132		"inputs"?: null | bool | number | string | [...] | close({
 3133			// Container registry
 3134			"containerRegistry"?: string
 3135
 3136			// Container repository
 3137			"repository"?: string
 3138
 3139			// Command
 3140			"command"?: "buildAndPush" | "build" | "push" | "login" | "logout" | "start" | "stop"
 3141
 3142			// Dockerfile
 3143			"Dockerfile"?: string
 3144
 3145			// Build context
 3146			"buildContext"?: string
 3147
 3148			// Tags
 3149			"tags"?: string
 3150
 3151			// Arguments
 3152			"arguments"?: string
 3153
 3154			// Add Pipeline metadata to image(s)
 3155			"addPipelineData"?: bool
 3156
 3157			// Add base image metadata to image(s)
 3158			"addBaseImageData"?: bool
 3159
 3160			// Container
 3161			"container"?: string
 3162		})
 3163		...
 3164	}, {
 3165		// Jenkins Queue Job
 3166		//
 3167		// Queue a job on a Jenkins server
 3168		"task"!: null | bool | number | =~"^JenkinsQueueJob@1$" | [...] | {
 3169			...
 3170		}
 3171
 3172		// Jenkins Queue Job inputs
 3173		"inputs"!: null | bool | number | string | [...] | close({
 3174			// Jenkins service endpoint
 3175			"serverEndpoint"!: string
 3176
 3177			// Job name
 3178			"jobName"!: string
 3179
 3180			// Job is of Multibranch Pipeline type
 3181			"isMultibranchJob"?: bool
 3182
 3183			// Multibranch Pipeline Branch
 3184			"multibranchPipelineBranch"?: string
 3185
 3186			// Capture console output and wait for completion
 3187			"captureConsole"?: bool
 3188
 3189			// Capture pipeline output and wait for pipeline completion
 3190			"capturePipeline"?: bool
 3191
 3192			// Parameterized job
 3193			"parameterizedJob"?: bool
 3194
 3195			// Job parameters
 3196			"jobParameters"?: string
 3197		})
 3198		...
 3199	}, {
 3200		// Jenkins queue job
 3201		//
 3202		// Queue a job on a Jenkins server
 3203		"task"!: null | bool | number | =~"^JenkinsQueueJob@2$" | [...] | {
 3204			...
 3205		}
 3206
 3207		// Jenkins queue job inputs
 3208		"inputs"!: null | bool | number | string | [...] | close({
 3209			// Jenkins service connection
 3210			"serverEndpoint"!: string
 3211
 3212			// Job name
 3213			"jobName"!: string
 3214
 3215			// Job is of multibranch pipeline type
 3216			"isMultibranchJob"?: bool
 3217
 3218			// Multibranch pipeline branch
 3219			"multibranchPipelineBranch"?: string
 3220
 3221			// Capture console output and wait for completion
 3222			"captureConsole"?: bool
 3223
 3224			// Capture pipeline output and wait for pipeline completion
 3225			"capturePipeline"?: bool
 3226
 3227			// Parameterized job
 3228			"isParameterizedJob"?: bool
 3229
 3230			// Job parameters
 3231			"jobParameters"?: string
 3232
 3233			// Fail on unstable result
 3234			"failOnUnstableResult"?: bool
 3235
 3236			// Number of retries for failed connection
 3237			"retryCount"?: string
 3238
 3239			// Time between retries
 3240			"delayBetweenRetries"?: string
 3241		})
 3242		...
 3243	}, {
 3244		// FTP upload
 3245		//
 3246		// Upload files using FTP
 3247		"task"!: null | bool | number | =~"^FtpUpload@2$" | [...] | {
 3248			...
 3249		}
 3250
 3251		// FTP upload inputs
 3252		"inputs"!: null | bool | number | string | [...] | close({
 3253			// Authentication Method
 3254			"credentialsOption"?: "serviceEndpoint" | "inputs"
 3255
 3256			// FTP Service Connection
 3257			"serverEndpoint"?: string
 3258
 3259			// Server URL
 3260			"serverUrl"?: string
 3261
 3262			// Username
 3263			"username"?: string
 3264
 3265			// Password
 3266			"password"?: string
 3267
 3268			// Use implicit FTPS
 3269			"implicitFTPS"?: bool
 3270
 3271			// Root folder
 3272			"rootDirectory"!: string
 3273
 3274			// File patterns
 3275			"filePatterns"?: string
 3276
 3277			// Remote directory
 3278			"remoteDirectory"?: string
 3279
 3280			// Enable UTF8 support
 3281			"enableUtf8"?: bool
 3282
 3283			// Delete remote directory
 3284			"clean"?: bool
 3285
 3286			// Clear remote directory contents
 3287			"cleanContents"?: bool
 3288
 3289			// Preserve file paths
 3290			"preservePaths"?: bool
 3291
 3292			// Trust server certificate
 3293			"trustSSL"?: bool
 3294
 3295			// FTP Commands
 3296			"customCmds"?: string
 3297		})
 3298		...
 3299	}, {
 3300		// FTP upload
 3301		//
 3302		// Upload files using FTP
 3303		"task"!: null | bool | number | =~"^FtpUpload@1$" | [...] | {
 3304			...
 3305		}
 3306
 3307		// FTP upload inputs
 3308		"inputs"!: null | bool | number | string | [...] | close({
 3309			// Authentication Method
 3310			"credentialsOption"?: "serviceEndpoint" | "inputs"
 3311
 3312			// FTP Service Connection
 3313			"serverEndpoint"?: string
 3314
 3315			// Server URL
 3316			"serverUrl"?: string
 3317
 3318			// Username
 3319			"username"?: string
 3320
 3321			// Password
 3322			"password"?: string
 3323
 3324			// Root folder
 3325			"rootDirectory"!: string
 3326
 3327			// File patterns
 3328			"filePatterns"?: string
 3329
 3330			// Remote directory
 3331			"remoteDirectory"?: string
 3332
 3333			// Delete remote directory
 3334			"clean"?: bool
 3335
 3336			// Clear remote directory contents
 3337			"cleanContents"?: bool
 3338
 3339			// Overwrite
 3340			"overwrite"?: bool
 3341
 3342			// Preserve file paths
 3343			"preservePaths"?: bool
 3344
 3345			// Trust server certificate
 3346			"trustSSL"?: bool
 3347		})
 3348		...
 3349	}, {
 3350		// Windows machine file copy
 3351		//
 3352		// Copy files to remote Windows machines
 3353		"task"!: null | bool | number | =~"^WindowsMachineFileCopy@2$" | [...] | {
 3354			...
 3355		}
 3356
 3357		// Windows machine file copy inputs
 3358		"inputs"!: null | bool | number | string | [...] | close({
 3359			// Source
 3360			"SourcePath"!: string
 3361
 3362			// Machines
 3363			"MachineNames"!: string
 3364
 3365			// Admin Login
 3366			"AdminUserName"!: string
 3367
 3368			// Password
 3369			"AdminPassword"!: string
 3370
 3371			// Destination Folder
 3372			"TargetPath"!: string
 3373
 3374			// Clean Target
 3375			"CleanTargetBeforeCopy"?: bool
 3376
 3377			// Copy Files in Parallel
 3378			"CopyFilesInParallel"?: bool
 3379
 3380			// Additional Arguments
 3381			"AdditionalArguments"?: string
 3382		})
 3383		...
 3384	}, {
 3385		// Windows machine file copy
 3386		//
 3387		// Copy files to remote Windows machines
 3388		"task"!: null | bool | number | =~"^WindowsMachineFileCopy@1$" | [...] | {
 3389			...
 3390		}
 3391
 3392		// Windows machine file copy inputs
 3393		"inputs"!: null | bool | number | string | [...] | close({
 3394			// Source
 3395			"SourcePath"!: string
 3396
 3397			// Machines
 3398			"EnvironmentName"?: string
 3399
 3400			// Admin Login
 3401			"AdminUserName"?: string
 3402
 3403			// Password
 3404			"AdminPassword"?: string
 3405
 3406			// Destination Folder
 3407			"TargetPath"!: string
 3408
 3409			// Clean Target
 3410			"CleanTargetBeforeCopy"?: bool
 3411
 3412			// Copy Files in Parallel
 3413			"CopyFilesInParallel"?: bool
 3414
 3415			// Additional Arguments
 3416			"AdditionalArguments"?: string
 3417
 3418			// Select Machines By
 3419			"ResourceFilteringMethod"?: "machineNames" | "tags"
 3420
 3421			// Filter Criteria
 3422			"MachineNames"?: string
 3423		})
 3424		...
 3425	}, {
 3426		// Android Build
 3427		//
 3428		// [Deprecated] Use Gradle
 3429		"task"!: null | bool | number | =~"^AndroidBuild@1$" | [...] | {
 3430			...
 3431		}
 3432
 3433		// Android Build inputs
 3434		"inputs"?: null | bool | number | string | [...] | close({
 3435			// Location of Gradle Wrapper
 3436			"gradleWrapper"?: string
 3437
 3438			// Project Directory
 3439			"gradleProj"?: string
 3440
 3441			// Gradle Arguments
 3442			"gradleArguments"?: string
 3443
 3444			// Name
 3445			"avdName"?: string
 3446
 3447			// Create AVD
 3448			"createAvd"?: bool
 3449
 3450			// AVD Target SDK
 3451			"emulatorTarget"?: string
 3452
 3453			// AVD Device
 3454			"emulatorDevice"?: string
 3455
 3456			// AVD ABI
 3457			"avdAbi"?: string
 3458
 3459			// Overwrite Existing AVD
 3460			"avdForce"?: bool
 3461
 3462			// Create AVD Optional Arguments
 3463			"avdOptionalArgs"?: string
 3464
 3465			// Start and Stop Android Emulator
 3466			"startEmulator"?: bool
 3467
 3468			// Timeout in Seconds
 3469			"emulatorTimeout"?: string
 3470
 3471			// Headless Display
 3472			"emulatorHeadless"?: bool
 3473
 3474			// Emulator Optional Arguments
 3475			"emulatorOptionalArgs"?: string
 3476
 3477			// Delete AVD
 3478			"deleteAvd"?: bool
 3479		})
 3480		...
 3481	}, {
 3482		// Python twine upload authenticate
 3483		//
 3484		// Authenticate for uploading Python distributions using twine.
 3485		// Add '-r FeedName/EndpointName --config-file $(PYPIRC_PATH)' to
 3486		// your twine upload command. For feeds present in this
 3487		// organization, use the feed name as the repository (-r).
 3488		// Otherwise, use the endpoint name defined in the service
 3489		// connection.
 3490		"task"!: null | bool | number | =~"^TwineAuthenticate@1$" | [...] | {
 3491			...
 3492		}
 3493
 3494		// Python twine upload authenticate inputs
 3495		"inputs"?: null | bool | number | string | [...] | close({
 3496			// 'Azure DevOps' Service Connection
 3497			"azureDevOpsServiceConnection"?: string
 3498
 3499			// Azure Artifacts Feed url.
 3500			"feedUrl"?: string
 3501
 3502			// My feed name (select below)
 3503			"artifactFeed"?: string
 3504
 3505			// Feed from external organizations
 3506			"pythonUploadServiceConnection"?: string
 3507		})
 3508		...
 3509	}, {
 3510		// Python twine upload authenticate
 3511		//
 3512		// Authenticate for uploading Python distributions using twine.
 3513		// Add '-r FeedName/EndpointName --config-file $(PYPIRC_PATH)' to
 3514		// your twine upload command. For feeds present in this
 3515		// organization, use the feed name as the repository (-r).
 3516		// Otherwise, use the endpoint name defined in the service
 3517		// connection.
 3518		"task"!: null | bool | number | =~"^TwineAuthenticate@0$" | [...] | {
 3519			...
 3520		}
 3521
 3522		// Python twine upload authenticate inputs
 3523		"inputs"?: null | bool | number | string | [...] | close({
 3524			// My feeds (select below)
 3525			"artifactFeeds"?: string
 3526
 3527			// Feeds from external organizations
 3528			"externalFeeds"?: string
 3529
 3530			// Publish pipeline metadata
 3531			"publishPackageMetadata"?: bool
 3532		})
 3533		...
 3534	}, {
 3535		// IIS web app deploy
 3536		//
 3537		// Deploy a website or web application using Web Deploy
 3538		"task"!: null | bool | number | =~"^IISWebAppDeploymentOnMachineGroup@0$" | [...] | {
 3539			...
 3540		}
 3541
 3542		// IIS web app deploy inputs
 3543		"inputs"!: null | bool | number | string | [...] | close({
 3544			// Website Name
 3545			"WebSiteName"!: string
 3546
 3547			// Virtual Application
 3548			"VirtualApplication"?: string
 3549
 3550			// Package or Folder
 3551			"Package"?: string
 3552
 3553			// SetParameters File
 3554			"SetParametersFile"?: string
 3555
 3556			// Remove Additional Files at Destination
 3557			"RemoveAdditionalFilesFlag"?: bool
 3558
 3559			// Exclude Files from the App_Data Folder
 3560			"ExcludeFilesFromAppDataFlag"?: bool
 3561
 3562			// Take App Offline
 3563			"TakeAppOfflineFlag"?: bool
 3564
 3565			// Additional Arguments
 3566			"AdditionalArguments"?: string
 3567
 3568			// XML transformation
 3569			"XmlTransformation"?: bool
 3570
 3571			// XML variable substitution
 3572			"XmlVariableSubstitution"?: bool
 3573
 3574			// JSON variable substitution
 3575			"JSONFiles"?: string
 3576		})
 3577		...
 3578	}, {
 3579		// Python script
 3580		//
 3581		// Run a Python file or inline script
 3582		"task"!: null | bool | number | =~"^PythonScript@0$" | [...] | {
 3583			...
 3584		}
 3585
 3586		// Python script inputs
 3587		"inputs"?: null | bool | number | string | [...] | close({
 3588			// Script source
 3589			"scriptSource"?: "filePath" | "inline"
 3590
 3591			// Script path
 3592			"scriptPath"?: string
 3593
 3594			// Script
 3595			"script"?: string
 3596
 3597			// Arguments
 3598			"arguments"?: string
 3599
 3600			// Python interpreter
 3601			"pythonInterpreter"?: string
 3602
 3603			// Working directory
 3604			"workingDirectory"?: string
 3605
 3606			// Fail on standard error
 3607			"failOnStderr"?: bool
 3608		})
 3609		...
 3610	}, {
 3611		// Helm tool installer
 3612		//
 3613		// Install Helm and Kubernetes on an agent machine
 3614		"task"!: null | bool | number | =~"^HelmInstaller@0$" | [...] | {
 3615			...
 3616		}
 3617
 3618		// Helm tool installer inputs
 3619		"inputs"?: null | bool | number | string | [...] | close({
 3620			// Helm Version Spec
 3621			"helmVersion"?: string
 3622
 3623			// Check for latest version of Helm
 3624			"checkLatestHelmVersion"?: bool
 3625
 3626			// Install Kubectl
 3627			"installKubectl"?: bool
 3628
 3629			// Kubectl Version Spec
 3630			"kubectlVersion"?: string
 3631
 3632			// Check for latest version of kubectl
 3633			"checkLatestKubectl"?: bool
 3634		})
 3635		...
 3636	}, {
 3637		// Helm tool installer
 3638		//
 3639		// Install Helm on an agent machine
 3640		"task"!: null | bool | number | =~"^HelmInstaller@1$" | [...] | {
 3641			...
 3642		}
 3643
 3644		// Helm tool installer inputs
 3645		"inputs"?: null | bool | number | string | [...] | close({
 3646			// Helm Version Spec
 3647			"helmVersionToInstall"?: string
 3648		})
 3649		...
 3650	}, {
 3651		// Node.js tasks runner installer
 3652		//
 3653		// Install specific Node.js version to run node tasks
 3654		"task"!: null | bool | number | =~"^NodeTaskRunnerInstaller@0$" | [...] | {
 3655			...
 3656		}
 3657
 3658		// Node.js tasks runner installer inputs
 3659		"inputs"?: null | bool | number | string | [...] | close({
 3660			// Version of runner to install
 3661			"nodeVersion"?: "6" | "10" | "16"
 3662		})
 3663		...
 3664	}, {
 3665		// Xamarin License
 3666		//
 3667		// [Deprecated] Upgrade to free version of Xamarin:
 3668		// https://store.xamarin.com
 3669		"task"!: null | bool | number | =~"^XamarinLicense@1$" | [...] | {
 3670			...
 3671		}
 3672
 3673		// Xamarin License inputs
 3674		"inputs"!: null | bool | number | string | [...] | close({
 3675			// Action
 3676			"action"?: "Activate" | "Deactivate"
 3677
 3678			// Email
 3679			"email"!: string
 3680
 3681			// Password
 3682			"password"!: string
 3683
 3684			// Xamarin Product
 3685			"product"?: "MA" | "MT" | "MM"
 3686
 3687			// Timeout in Seconds
 3688			"timeout"?: string
 3689		})
 3690		...
 3691	}, {
 3692		// NuGet authenticate
 3693		//
 3694		// This version of the task is deprecated, use NuGetAuthenticateV1
 3695		// instead. Configure NuGet tools to authenticate with Azure
 3696		// Artifacts and other NuGet repositories. Requires NuGet >=
 3697		// 4.8.5385, dotnet >= 2.1.400, or MSBuild >= 15.8.166.59604.
 3698		"task"!: null | bool | number | =~"^NuGetAuthenticate@0$" | [...] | {
 3699			...
 3700		}
 3701
 3702		// NuGet authenticate inputs
 3703		"inputs"?: null | bool | number | string | [...] | close({
 3704			// Service connection credentials for feeds outside this
 3705			// organization
 3706			"nuGetServiceConnections"?: string
 3707
 3708			// Reinstall the credential provider even if already installed
 3709			"forceReinstallCredentialProvider"?: bool
 3710		})
 3711		...
 3712	}, {
 3713		// NuGet authenticate
 3714		//
 3715		// Configure NuGet tools to authenticate with Azure Artifacts and
 3716		// other NuGet repositories. Requires NuGet >= 4.8.5385, dotnet
 3717		// >= 6, or MSBuild >= 15.8.166.59604
 3718		"task"!: null | bool | number | =~"^NuGetAuthenticate@1$" | [...] | {
 3719			...
 3720		}
 3721
 3722		// NuGet authenticate inputs
 3723		"inputs"?: null | bool | number | string | [...] | close({
 3724			// 'Azure DevOps' Service Connection
 3725			"azureDevOpsServiceConnection"?: string
 3726
 3727			// Azure Artifacts URL
 3728			"feedUrl"?: string
 3729
 3730			// Reinstall the credential provider even if already installed
 3731			"forceReinstallCredentialProvider"?: bool
 3732
 3733			// Service connection credentials for feeds outside this
 3734			// organization
 3735			"nuGetServiceConnections"?: string
 3736		})
 3737		...
 3738	}, {
 3739		// Download GitHub Nuget Packages
 3740		//
 3741		// Restore your nuget packages using dotnet CLI
 3742		"task"!: null | bool | number | =~"^DownloadGitHubNugetPackage@1$" | [...] | {
 3743			...
 3744		}
 3745
 3746		// Download GitHub Nuget Packages inputs
 3747		"inputs"!: null | bool | number | string | [...] | close({
 3748			// Package Name
 3749			"packageName"!: string
 3750
 3751			// Package Version
 3752			"version"!: string
 3753
 3754			// Credentials for feed from GitHub
 3755			"externalFeedCredentials"?: string
 3756
 3757			// Destination directory
 3758			"restoreDirectory"?: string
 3759		})
 3760		...
 3761	}, {
 3762		// Maven Authenticate
 3763		//
 3764		// Provides credentials for Azure Artifacts feeds and external
 3765		// maven repositories
 3766		"task"!: null | bool | number | =~"^MavenAuthenticate@0$" | [...] | {
 3767			...
 3768		}
 3769
 3770		// Maven Authenticate inputs
 3771		"inputs"?: null | bool | number | string | [...] | close({
 3772			// 'Azure DevOps' Service Connection
 3773			"azureDevOpsServiceConnection"?: string
 3774
 3775			// Feeds
 3776			"artifactsFeeds"?: string
 3777
 3778			// Credentials for repositories outside this
 3779			// organization/collection
 3780			"mavenServiceConnections"?: string
 3781		})
 3782		...
 3783	}, {
 3784		// Azure App Configuration Export
 3785		//
 3786		// Export key-values from Azure App Configuration to task
 3787		// variables in your build or deployment pipelines
 3788		"task"!: null | bool | number | =~"^AzureAppConfigurationExport@10$" | [...] | {
 3789			...
 3790		}
 3791
 3792		// Azure App Configuration Export inputs
 3793		"inputs"!: null | bool | number | string | [...] | close({
 3794			// Azure subscription
 3795			"azureSubscription"!: string
 3796
 3797			// App Configuration Endpoint
 3798			"AppConfigurationEndpoint"!: string
 3799
 3800			// Selection Mode
 3801			"SelectionMode"?: "Default" | "Snapshot"
 3802
 3803			// Key Filter
 3804			"KeyFilter"?: string
 3805
 3806			// Label
 3807			"Label"?: string
 3808
 3809			// Snapshot name
 3810			"SnapshotName"?: string
 3811
 3812			// Trim Key Prefix
 3813			"TrimKeyPrefix"?: string
 3814
 3815			// Suppress warning for overridden keys
 3816			"SuppressWarningForOverriddenKeys"?: bool
 3817
 3818			// Treat key vault resolution errors as warnings
 3819			"TreatKeyVaultErrorsAsWarning"?: bool
 3820		})
 3821		...
 3822	}, {
 3823		// Review App
 3824		//
 3825		// Use this task under deploy phase provider to create a resource
 3826		// dynamically
 3827		"task"!: null | bool | number | =~"^ReviewApp@0$" | [...] | {
 3828			...
 3829		}
 3830
 3831		// Review App inputs
 3832		"inputs"!: null | bool | number | string | [...] | close({
 3833			// Resource name
 3834			"resourceName"!: string
 3835
 3836			// Environment name
 3837			"baseEnvironmentName"?: string
 3838
 3839			// Review Resource Name
 3840			"reviewResourceName"?: string
 3841		})
 3842		...
 3843	}, {
 3844		// Java tool installer
 3845		//
 3846		// Acquire a specific version of Java from a user-supplied Azure
 3847		// blob or the tool cache and sets JAVA_HOME
 3848		"task"!: null | bool | number | =~"^JavaToolInstaller@0$" | [...] | {
 3849			...
 3850		}
 3851
 3852		// Java tool installer inputs
 3853		"inputs"!: null | bool | number | string | [...] | close({
 3854			// JDK version
 3855			"versionSpec"?: string
 3856
 3857			// JDK architecture
 3858			"jdkArchitectureOption"!: "x64" | "x86"
 3859
 3860			// JDK source
 3861			"jdkSourceOption"!: "AzureStorage" | "LocalDirectory" | "PreInstalled"
 3862
 3863			// JDK file
 3864			"jdkFile"?: string
 3865
 3866			// Azure subscription
 3867			"azureResourceManagerEndpoint"?: string
 3868
 3869			// Storage account name
 3870			"azureStorageAccountName"?: string
 3871
 3872			// Container name
 3873			"azureContainerName"?: string
 3874
 3875			// Common virtual path
 3876			"azureCommonVirtualFile"?: string
 3877
 3878			// Destination directory
 3879			"jdkDestinationDirectory"?: string
 3880
 3881			// Resource Group name
 3882			"azureResourceGroupName"?: string
 3883
 3884			// Clean destination directory
 3885			"cleanDestinationDirectory"?: bool
 3886
 3887			// Create directory for extracting
 3888			"createExtractDirectory"?: bool
 3889		})
 3890		...
 3891	}, {
 3892		// Java tool installer
 3893		//
 3894		// Acquire a specific version of Java from a user-supplied Azure
 3895		// blob or the tool cache and sets JAVA_HOME
 3896		"task"!: null | bool | number | =~"^JavaToolInstaller@1$" | [...] | {
 3897			...
 3898		}
 3899
 3900		// Java tool installer inputs
 3901		"inputs"!: null | bool | number | string | [...] | close({
 3902			// JDK version
 3903			"versionSpec"?: string
 3904
 3905			// JDK architecture
 3906			"jdkArchitectureOption"!: "x64" | "x86"
 3907
 3908			// JDK source
 3909			"jdkSourceOption"!: "AzureStorage" | "LocalDirectory" | "PreInstalled"
 3910
 3911			// JDK file
 3912			"jdkFile"?: string
 3913
 3914			// Azure subscription
 3915			"azureResourceManagerEndpoint"?: string
 3916
 3917			// Storage account name
 3918			"azureStorageAccountName"?: string
 3919
 3920			// Container name
 3921			"azureContainerName"?: string
 3922
 3923			// Common virtual path
 3924			"azureCommonVirtualFile"?: string
 3925
 3926			// Destination directory
 3927			"jdkDestinationDirectory"?: string
 3928
 3929			// Resource Group name
 3930			"azureResourceGroupName"?: string
 3931
 3932			// Clean destination directory
 3933			"cleanDestinationDirectory"?: bool
 3934
 3935			// Create directory for extracting
 3936			"createExtractDirectory"?: bool
 3937		})
 3938		...
 3939	}, {
 3940		// Chef
 3941		//
 3942		// Deploy to Chef environments by editing environment attributes
 3943		"task"!: null | bool | number | =~"^Chef@1$" | [...] | {
 3944			...
 3945		}
 3946
 3947		// Chef inputs
 3948		"inputs"!: null | bool | number | string | [...] | close({
 3949			// Chef Service Connection
 3950			"connectedServiceName"!: string
 3951
 3952			// Environment
 3953			"Environment"!: string
 3954
 3955			// Environment Attributes
 3956			"Attributes"!: string
 3957
 3958			// Wait Time
 3959			"chefWaitTime"?: string
 3960		})
 3961		...
 3962	}, {
 3963		// Azure Functions Deploy
 3964		//
 3965		// Update a function app with .NET, Python, JavaScript,
 3966		// PowerShell, Java based web applications
 3967		"task"!: null | bool | number | =~"^AzureFunctionApp@2$" | [...] | {
 3968			...
 3969		}
 3970
 3971		// Azure Functions Deploy inputs
 3972		"inputs"!: null | bool | number | string | [...] | close({
 3973			// Azure Resource Manager connection
 3974			"connectedServiceNameARM"!: string
 3975
 3976			// App type
 3977			"appType"!: "functionApp" | "functionAppLinux"
 3978
 3979			// Is Function App on Flex Consumption Plan
 3980			"isFlexConsumption"?: bool
 3981
 3982			// Azure Functions App name
 3983			"appName"!: string
 3984
 3985			// Deploy to Slot or App Service Environment
 3986			"deployToSlotOrASE"?: bool
 3987
 3988			// Resource group
 3989			"resourceGroupName"?: string
 3990
 3991			// Slot
 3992			"slotName"?: string
 3993
 3994			// Package or folder
 3995			"package"?: string
 3996
 3997			// Runtime stack
 3998			"runtimeStack"?: "DOTNET|6.0" | "DOTNET-ISOLATED|6.0" | "DOTNET-ISOLATED|7.0" | "DOTNET-ISOLATED|8.0" | "DOTNET-ISOLATED|9.0" | "JAVA|8" | "JAVA|11" | "JAVA|17" | "JAVA|21" | "NODE|14" | "NODE|16" | "NODE|18" | "NODE|20" | "PYTHON|3.8" | "PYTHON|3.9" | "PYTHON|3.10" | "PYTHON|3.11"
 3999
 4000			// App settings
 4001			"appSettings"?: string
 4002
 4003			// Deployment method
 4004			"deploymentMethod"?: "auto" | "zipDeploy" | "runFromPackage"
 4005		})
 4006		...
 4007	}, {
 4008		// Azure Functions
 4009		//
 4010		// Update a function app with .NET, Python, JavaScript,
 4011		// PowerShell, Java based web applications
 4012		"task"!: null | bool | number | =~"^AzureFunctionApp@1$" | [...] | {
 4013			...
 4014		}
 4015
 4016		// Azure Functions inputs
 4017		"inputs"!: null | bool | number | string | [...] | close({
 4018			// Azure subscription
 4019			"azureSubscription"!: string
 4020
 4021			// App type
 4022			"appType"!: "functionApp" | "functionAppLinux"
 4023
 4024			// Azure Functions App name
 4025			"appName"!: string
 4026
 4027			// Deploy to Slot or App Service Environment
 4028			"deployToSlotOrASE"?: bool
 4029
 4030			// Resource group
 4031			"resourceGroupName"?: string
 4032
 4033			// Slot
 4034			"slotName"?: string
 4035
 4036			// Package or folder
 4037			"package"?: string
 4038
 4039			// Runtime stack
 4040			"runtimeStack"?: "DOTNET|6.0" | "DOTNET-ISOLATED|6.0" | "DOTNET-ISOLATED|7.0" | "DOTNET-ISOLATED|8.0" | "DOTNET-ISOLATED|9.0" | "JAVA|8" | "JAVA|11" | "JAVA|17" | "JAVA|21" | "NODE|14" | "NODE|16" | "NODE|18" | "NODE|20" | "PYTHON|3.8" | "PYTHON|3.9" | "PYTHON|3.10" | "PYTHON|3.11"
 4041
 4042			// Startup command
 4043			"startUpCommand"?: string
 4044
 4045			// Generate web.config parameters for Python, Node.js, Go and Java
 4046			// apps
 4047			"customWebConfig"?: string
 4048
 4049			// App settings
 4050			"appSettings"?: string
 4051
 4052			// Configuration settings
 4053			"configurationStrings"?: string
 4054
 4055			// Deployment method
 4056			"deploymentMethod"?: "auto" | "zipDeploy" | "runFromPackage"
 4057		})
 4058		...
 4059	}, {
 4060		// Azure Functions Deploy
 4061		//
 4062		// Update a function app with .NET, Python, JavaScript,
 4063		// PowerShell, Java based web applications
 4064		"task"!: null | bool | number | =~"^AzureFunctionApp@2$" | [...] | {
 4065			...
 4066		}
 4067
 4068		// Azure Functions Deploy inputs
 4069		"inputs"!: null | bool | number | string | [...] | close({
 4070			// Azure Resource Manager connection
 4071			"connectedServiceNameARM"!: string
 4072
 4073			// App type
 4074			"appType"!: "functionApp" | "functionAppLinux"
 4075
 4076			// Is Function App on Flex Consumption Plan
 4077			"isFlexConsumption"?: bool
 4078
 4079			// Azure Functions App name
 4080			"appName"!: string
 4081
 4082			// Deploy to Slot or App Service Environment
 4083			"deployToSlotOrASE"?: bool
 4084
 4085			// Resource group
 4086			"resourceGroupName"?: string
 4087
 4088			// Slot
 4089			"slotName"?: string
 4090
 4091			// Package or folder
 4092			"package"?: string
 4093
 4094			// Runtime stack
 4095			"runtimeStack"?: "DOTNET|6.0" | "DOTNET-ISOLATED|6.0" | "DOTNET-ISOLATED|7.0" | "DOTNET-ISOLATED|8.0" | "JAVA|8" | "JAVA|11" | "JAVA|17" | "JAVA|21" | "NODE|14" | "NODE|16" | "NODE|18" | "NODE|20" | "PYTHON|3.8" | "PYTHON|3.9" | "PYTHON|3.10" | "PYTHON|3.11"
 4096
 4097			// App settings
 4098			"appSettings"?: string
 4099
 4100			// Deployment method
 4101			"deploymentMethod"?: "auto" | "zipDeploy" | "runFromPackage"
 4102		})
 4103		...
 4104	}, {
 4105		// npm authenticate (for task runners)
 4106		//
 4107		// Don't use this task if you're also using the npm task. Provides
 4108		// npm credentials to an .npmrc file in your repository for the
 4109		// scope of the build. This enables npm task runners like gulp
 4110		// and Grunt to authenticate with private registries.
 4111		"task"!: null | bool | number | =~"^npmAuthenticate@0$" | [...] | {
 4112			...
 4113		}
 4114
 4115		// npm authenticate (for task runners) inputs
 4116		"inputs"!: null | bool | number | string | [...] | close({
 4117			// 'Azure DevOps' Service Connection
 4118			"azureDevOpsServiceConnection"?: string
 4119
 4120			// Azure Artifacts URL
 4121			"feedUrl"?: string
 4122
 4123			// .npmrc file to authenticate
 4124			"workingFile"!: string
 4125
 4126			// Credentials for registries outside this organization/collection
 4127			"customEndpoint"?: string
 4128		})
 4129		...
 4130	}, {
 4131		// MSBuild
 4132		//
 4133		// Build with MSBuild
 4134		"task"!: null | bool | number | =~"^MSBuild@1$" | [...] | {
 4135			...
 4136		}
 4137
 4138		// MSBuild inputs
 4139		"inputs"?: null | bool | number | string | [...] | close({
 4140			// Project
 4141			"solution"?: string
 4142
 4143			// MSBuild
 4144			"msbuildLocationMethod"?: "version" | "location"
 4145
 4146			// MSBuild Version
 4147			"msbuildVersion"?: "latest" | "17.0" | "16.0" | "15.0" | "14.0" | "12.0" | "4.0"
 4148
 4149			// MSBuild Architecture
 4150			"msbuildArchitecture"?: "x86" | "x64"
 4151
 4152			// Path to MSBuild
 4153			"msbuildLocation"?: string
 4154
 4155			// Platform
 4156			"platform"?: string
 4157
 4158			// Configuration
 4159			"configuration"?: string
 4160
 4161			// MSBuild Arguments
 4162			"msbuildArguments"?: string
 4163
 4164			// Clean
 4165			"clean"?: bool
 4166
 4167			// Build in Parallel
 4168			"maximumCpuCount"?: bool
 4169
 4170			// Restore NuGet Packages
 4171			"restoreNugetPackages"?: bool
 4172
 4173			// Record Project Details
 4174			"logProjectEvents"?: bool
 4175
 4176			// Create Log File
 4177			"createLogFile"?: bool
 4178
 4179			// Log File Verbosity
 4180			"logFileVerbosity"?: "quiet" | "minimal" | "normal" | "detailed" | "diagnostic"
 4181		})
 4182		...
 4183	}, {
 4184		// Build machine image
 4185		//
 4186		// Build a machine image using Packer, which may be used for Azure
 4187		// Virtual machine scale set deployment
 4188		"task"!: null | bool | number | =~"^PackerBuild@0$" | [...] | {
 4189			...
 4190		}
 4191
 4192		// Build machine image inputs
 4193		"inputs"!: null | bool | number | string | [...] | close({
 4194			// Packer template
 4195			"templateType"?: "builtin" | "custom"
 4196
 4197			// Packer template location
 4198			"customTemplateLocation"?: string
 4199
 4200			// Template parameters
 4201			"customTemplateParameters"?: string
 4202
 4203			// Azure subscription
 4204			"ConnectedServiceName"!: string
 4205
 4206			// Storage location
 4207			"location"!: string
 4208
 4209			// Storage account
 4210			"storageAccountName"!: string
 4211
 4212			// Resource group
 4213			"azureResourceGroup"!: string
 4214
 4215			// Base image source
 4216			"baseImageSource"?: "default" | "customVhd"
 4217
 4218			// Base image
 4219			"baseImage"?: "MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter:windows" | "MicrosoftWindowsServer:WindowsServer:2016-Datacenter:windows" | "MicrosoftWindowsServer:WindowsServer:2012-Datacenter:windows" | "MicrosoftWindowsServer:WindowsServer:2008-R2-SP1:windows" | "Canonical:UbuntuServer:14.04.4-LTS:linux" | "Canonical:UbuntuServer:16.04-LTS:linux" | "RedHat:RHEL:7.2:linux" | "RedHat:RHEL:6.8:linux" | "OpenLogic:CentOS:7.2:linux" | "OpenLogic:CentOS:6.8:linux" | "credativ:Debian:8:linux" | "credativ:Debian:7:linux" | "SUSE:openSUSE-Leap:42.2:linux" | "SUSE:SLES:12-SP2:linux" | "SUSE:SLES:11-SP4:linux"
 4220
 4221			// Base image URL
 4222			"customImageUrl"?: string
 4223
 4224			// Base image OS
 4225			"customImageOSType"?: "windows" | "linux"
 4226
 4227			// Deployment Package
 4228			"packagePath"!: string
 4229
 4230			// Deployment script
 4231			"deployScriptPath"!: string
 4232
 4233			// Deployment script arguments
 4234			"deployScriptArguments"?: string
 4235
 4236			// Additional Builder parameters
 4237			"additionalBuilderParameters"?: string
 4238
 4239			// Skip temporary file cleanup during deprovision
 4240			"skipTempFileCleanupDuringVMDeprovision"?: bool
 4241
 4242			// Image URL
 4243			"imageUri"?: string
 4244		})
 4245		...
 4246	}, {
 4247		// Build machine image
 4248		//
 4249		// Build a machine image using Packer, which may be used for Azure
 4250		// Virtual machine scale set deployment
 4251		"task"!: null | bool | number | =~"^PackerBuild@1$" | [...] | {
 4252			...
 4253		}
 4254
 4255		// Build machine image inputs
 4256		"inputs"!: null | bool | number | string | [...] | close({
 4257			// Packer template
 4258			"templateType"?: "builtin" | "custom"
 4259
 4260			// Packer template location
 4261			"customTemplateLocation"?: string
 4262
 4263			// Template parameters
 4264			"customTemplateParameters"?: string
 4265
 4266			// Azure subscription
 4267			"ConnectedServiceName"!: string
 4268
 4269			// Managed VM disk image
 4270			"isManagedImage"?: bool
 4271
 4272			// Managed VM Disk Image Name
 4273			"managedImageName"?: string
 4274
 4275			// Storage location
 4276			"location"!: string
 4277
 4278			// Storage account
 4279			"storageAccountName"!: string
 4280
 4281			// Resource group
 4282			"azureResourceGroup"!: string
 4283
 4284			// Base image source
 4285			"baseImageSource"?: "default" | "customVhd"
 4286
 4287			// Base image
 4288			"baseImage"?: "MicrosoftWindowsServer:WindowsServer:2012-R2-Datacenter:windows" | "MicrosoftWindowsServer:WindowsServer:2016-Datacenter:windows" | "MicrosoftWindowsServer:WindowsServer:2012-Datacenter:windows" | "MicrosoftWindowsServer:WindowsServer:2008-R2-SP1:windows" | "Canonical:UbuntuServer:14.04.4-LTS:linux" | "Canonical:UbuntuServer:16.04-LTS:linux" | "Canonical:UbuntuServer:18.04-LTS:linux" | "RedHat:RHEL:7.2:linux" | "RedHat:RHEL:6.8:linux" | "OpenLogic:CentOS:7.2:linux" | "OpenLogic:CentOS:6.8:linux" | "credativ:Debian:8:linux" | "credativ:Debian:7:linux" | "SUSE:openSUSE-Leap:42.2:linux" | "SUSE:SLES:12-SP2:linux" | "SUSE:SLES:11-SP4:linux"
 4289
 4290			// Base image URL
 4291			"customImageUrl"?: string
 4292
 4293			// Base image OS
 4294			"customImageOSType"?: "windows" | "linux"
 4295
 4296			// Deployment Package
 4297			"packagePath"!: string
 4298
 4299			// Deployment script
 4300			"deployScriptPath"!: string
 4301
 4302			// Deployment script arguments
 4303			"deployScriptArguments"?: string
 4304
 4305			// Delete temp folder
 4306			"canDeleteTempFolder"?: bool
 4307
 4308			// Additional Builder parameters
 4309			"additionalBuilderParameters"?: string
 4310
 4311			// Skip temporary file cleanup during deprovision
 4312			"skipTempFileCleanupDuringVMDeprovision"?: bool
 4313
 4314			// Packer Version
 4315			"packerVersion"?: string
 4316
 4317			// Image URL or Name
 4318			"imageUri"?: string
 4319
 4320			// Azure Resource Id
 4321			"imageId"?: string
 4322		})
 4323		...
 4324	}, {
 4325		// NuGet packager
 4326		//
 4327		// Deprecated: use the “NuGet” task instead. It works with the new
 4328		// Tool Installer framework so you can easily use new versions of
 4329		// NuGet without waiting for a task update, provides better
 4330		// support for authenticated feeds outside this
 4331		// organization/collection, and uses NuGet 4 by default.
 4332		"task"!: null | bool | number | =~"^NuGetPackager@0$" | [...] | {
 4333			...
 4334		}
 4335
 4336		// NuGet packager inputs
 4337		"inputs"?: null | bool | number | string | [...] | close({
 4338			// Path to csproj or nuspec file(s) to pack
 4339			"searchPattern"?: string
 4340
 4341			// Package Folder
 4342			"outputdir"?: string
 4343
 4344			// Include referenced projects
 4345			"includeReferencedProjects"?: bool
 4346
 4347			// Automatic package versioning
 4348			"versionByBuild"?: "false" | "byPrereleaseNumber" | "byEnvVar" | "true"
 4349
 4350			// Environment variable
 4351			"versionEnvVar"?: string
 4352
 4353			// Major
 4354			"requestedMajorVersion"?: string
 4355
 4356			// Minor
 4357			"requestedMinorVersion"?: string
 4358
 4359			// Patch
 4360			"requestedPatchVersion"?: string
 4361
 4362			// Configuration to Package
 4363			"configurationToPack"?: string
 4364
 4365			// Additional build properties
 4366			"buildProperties"?: string
 4367
 4368			// NuGet Arguments
 4369			"nuGetAdditionalArgs"?: string
 4370
 4371			// Path to NuGet.exe
 4372			"nuGetPath"?: string
 4373		})
 4374		...
 4375	}, {
 4376		// Azure App Configuration Snapshot
 4377		//
 4378		// Create a configuration snapshot in Azure App Configuration
 4379		// through build or deployment pipelines
 4380		"task"!: null | bool | number | =~"^AzureAppConfigurationSnapshot@1$" | [...] | {
 4381			...
 4382		}
 4383
 4384		// Azure App Configuration Snapshot inputs
 4385		"inputs"!: null | bool | number | string | [...] | close({
 4386			// Azure subscription
 4387			"azureSubscription"!: string
 4388
 4389			// App Configuration Endpoint
 4390			"AppConfigurationEndpoint"!: string
 4391
 4392			// Snapshot Name
 4393			"SnapshotName"!: string
 4394
 4395			// Composition Type
 4396			"CompositionType"?: "key" | "key_label"
 4397
 4398			// Filters for key-values
 4399			"Filters"!: string
 4400
 4401			// Days to retain archived snapshot
 4402			"RetentionPeriod"?: int
 4403
 4404			// Tags
 4405			"Tags"?: string
 4406		})
 4407		...
 4408	}, {
 4409		// Duffle tool installer
 4410		//
 4411		// Install a specified version of Duffle for installing and
 4412		// managing CNAB bundles
 4413		"task"!: null | bool | number | =~"^DuffleInstaller@0$" | [...] | {
 4414			...
 4415		}
 4416
 4417		// Duffle tool installer inputs
 4418		"inputs"?: null | bool | number | string | [...] | close({
 4419			// Version
 4420			"version"?: string
 4421
 4422			// Check for latest version
 4423			"checkLatestVersion"?: bool
 4424		})
 4425		...
 4426	}, {
 4427		// Update Service Fabric App Versions
 4428		//
 4429		// Automatically updates the versions of a packaged Service Fabric
 4430		// application.
 4431		"task"!: null | bool | number | =~"^ServiceFabricUpdateAppVersions@1$" | [...] | {
 4432			...
 4433		}
 4434
 4435		// Update Service Fabric App Versions inputs
 4436		"inputs"!: null | bool | number | string | [...] | close({
 4437			// Application Package
 4438			"applicationPackagePath"!: string
 4439
 4440			// Version Value
 4441			"versionSuffix"?: string
 4442
 4443			// Version Behavior
 4444			"versionBehavior"?: "Append" | "Replace"
 4445
 4446			// Update only if changed
 4447			"updateOnlyChanged"?: bool
 4448
 4449			// Package Artifact Name
 4450			"pkgArtifactName"?: string
 4451
 4452			// Log all changes
 4453			"logAllChanges"?: bool
 4454
 4455			// Compare against
 4456			"compareType"?: "LastSuccessful" | "Specific"
 4457
 4458			// Build Number
 4459			"buildNumber"?: string
 4460		})
 4461		...
 4462	}, {
 4463		// Update Service Fabric manifests
 4464		//
 4465		// Automatically update portions of application and service
 4466		// manifests in a packaged Azure Service Fabric application
 4467		"task"!: null | bool | number | =~"^ServiceFabricUpdateManifests@2$" | [...] | {
 4468			...
 4469		}
 4470
 4471		// Update Service Fabric manifests inputs
 4472		"inputs"!: null | bool | number | string | [...] | close({
 4473			// Update Type
 4474			"updateType"?: "Manifest versions" | "Docker image settings"
 4475
 4476			// Application Package
 4477			"applicationPackagePath"!: string
 4478
 4479			// Version Value
 4480			"versionSuffix"?: string
 4481
 4482			// Version Behavior
 4483			"versionBehavior"?: "Append" | "Replace"
 4484
 4485			// Update only if changed
 4486			"updateOnlyChanged"?: bool
 4487
 4488			// Package Artifact Name
 4489			"pkgArtifactName"?: string
 4490
 4491			// Log all changes
 4492			"logAllChanges"?: bool
 4493
 4494			// Compare against
 4495			"compareType"?: "LastSuccessful" | "Specific"
 4496
 4497			// Build Number
 4498			"buildNumber"?: string
 4499
 4500			// Overwrite Existing Package Artifact
 4501			"overwriteExistingPkgArtifact"?: bool
 4502
 4503			// Image Names Path
 4504			"imageNamesPath"?: string
 4505
 4506			// Image Digests Path
 4507			"imageDigestsPath"?: string
 4508		})
 4509		...
 4510	}, {
 4511		// Query Azure Monitor alerts
 4512		//
 4513		// Observe the configured Azure Monitor rules for active alerts
 4514		"task"!: null | bool | number | =~"^AzureMonitor@1$" | [...] | {
 4515			...
 4516		}
 4517
 4518		// Query Azure Monitor alerts inputs
 4519		"inputs"!: null | bool | number | string | [...] | close({
 4520			// Azure subscription
 4521			"connectedServiceNameARM"!: string
 4522
 4523			// Resource group
 4524			"ResourceGroupName"!: string
 4525
 4526			// Filter type
 4527			"filterType"?: "resource" | "alertrule" | "none"
 4528
 4529			// Resource
 4530			"resource"?: string
 4531
 4532			// Alert rule
 4533			"alertRule"?: string
 4534
 4535			// Severity
 4536			"severity"?: "Sev0" | "Sev1" | "Sev2" | "Sev3" | "Sev4"
 4537
 4538			// Time range
 4539			"timeRange"?: "1h" | "1d" | "7d" | "30d"
 4540
 4541			// Alert state
 4542			"alertState"?: "New" | "Acknowledged" | "Closed"
 4543
 4544			// Monitor condition
 4545			"monitorCondition"?: "Fired " | "Resolved"
 4546		})
 4547		...
 4548	}, {
 4549		// Query Classic Azure Monitor alerts
 4550		//
 4551		// Observe the configured classic Azure Monitor rules for active
 4552		// alerts
 4553		"task"!: null | bool | number | =~"^AzureMonitor@0$" | [...] | {
 4554			...
 4555		}
 4556
 4557		// Query Classic Azure Monitor alerts inputs
 4558		"inputs"!: null | bool | number | string | [...] | close({
 4559			// Azure subscription
 4560			"connectedServiceNameARM"!: string
 4561
 4562			// Resource group
 4563			"ResourceGroupName"!: string
 4564
 4565			// Resource type
 4566			"ResourceType"?: "Microsoft.Insights/components" | "Microsoft.Web/sites" | "Microsoft.Storage/storageAccounts" | "Microsoft.Compute/virtualMachines"
 4567
 4568			// Resource name
 4569			"resourceName"!: string
 4570
 4571			// Alert rules
 4572			"alertRules"!: string
 4573		})
 4574		...
 4575	}, {
 4576		// Notation
 4577		//
 4578		// Azure Pipepine Task for setting up Notation CLI, sign and
 4579		// verify with Notation
 4580		"task"!: null | bool | number | =~"^Notation@0$" | [...] | {
 4581			...
 4582		}
 4583
 4584		// Notation inputs
 4585		"inputs"?: null | bool | number | string | [...] | close({
 4586			// Command to run
 4587			"command"?: "install" | "sign" | "verify"
 4588
 4589			// Custom Version
 4590			"isCustomVersion"?: bool
 4591
 4592			// Version
 4593			"version"?: string
 4594
 4595			// Download URL
 4596			"url"?: string
 4597
 4598			// Checksum
 4599			"checksum"?: string
 4600
 4601			// Artifact references
 4602			"artifactRefs"?: string
 4603
 4604			// Signature Format
 4605			"signatureFormat"?: "cose" | "jws"
 4606
 4607			// [Experimental] Allow Referrers API
 4608			"allowReferrersAPI"?: bool
 4609
 4610			// Plugin
 4611			"plugin"?: "azureKeyVault"
 4612
 4613			// Plugin Version
 4614			"akvPluginVersion"?: string
 4615
 4616			// Azure Key Vault service connection
 4617			"azurekvServiceConection"?: string
 4618
 4619			// Key ID
 4620			"keyid"?: string
 4621
 4622			// Certificate Bundle File Path
 4623			"caCertBundle"?: string
 4624
 4625			// Self-signed Certificate
 4626			"selfSigned"?: bool
 4627
 4628			// Timestamp URL
 4629			"timestampURL"?: string
 4630
 4631			// Timestamp Root Certificate
 4632			"timestampRootCert"?: string
 4633
 4634			// Trust Policy File Path
 4635			"trustPolicy"?: string
 4636
 4637			// Trust Store Folder Path
 4638			"trustStore"?: string
 4639		})
 4640		...
 4641	}, {
 4642		// Azure Network Load Balancer
 4643		//
 4644		// Connect or disconnect an Azure virtual machine's network
 4645		// interface to a Load Balancer's back end address pool
 4646		"task"!: null | bool | number | =~"^AzureNLBManagement@1$" | [...] | {
 4647			...
 4648		}
 4649
 4650		// Azure Network Load Balancer inputs
 4651		"inputs"!: null | bool | number | string | [...] | close({
 4652			// Azure Subscription
 4653			"azureSubscription"!: string
 4654
 4655			// Resource Group
 4656			"ResourceGroupName"!: string
 4657
 4658			// Load Balancer Name
 4659			"LoadBalancer"!: string
 4660
 4661			// Action
 4662			"Action"!: "Disconnect" | "Connect"
 4663		})
 4664		...
 4665	}, {
 4666		// Docker Compose
 4667		//
 4668		// Build, push or run multi-container Docker applications. Task
 4669		// can be used with Docker or Azure Container registry.
 4670		"task"!: null | bool | number | =~"^DockerCompose@0$" | [...] | {
 4671			...
 4672		}
 4673
 4674		// Docker Compose inputs
 4675		"inputs"?: null | bool | number | string | [...] | close({
 4676			// Container Registry Type
 4677			"containerregistrytype"?: "Azure Container Registry" | "Container Registry"
 4678
 4679			// Docker Registry Service Connection
 4680			"dockerRegistryEndpoint"?: string
 4681
 4682			// Azure subscription
 4683			"azureSubscription"?: string
 4684
 4685			// Azure Container Registry
 4686			"azureContainerRegistry"?: string
 4687
 4688			// Docker Compose File
 4689			"dockerComposeFile"?: string
 4690
 4691			// Additional Docker Compose Files
 4692			"additionalDockerComposeFiles"?: string
 4693
 4694			// Environment Variables
 4695			"dockerComposeFileArgs"?: string
 4696
 4697			// Project Name
 4698			"projectName"?: string
 4699
 4700			// Qualify Image Names
 4701			"qualifyImageNames"?: bool
 4702
 4703			// Action
 4704			"action"?: "Build services" | "Push services" | "Run services" | "Run a specific service" | "Lock services" | "Write service image digests" | "Combine configuration" | "Run a Docker Compose command"
 4705
 4706			// Additional Image Tags
 4707			"additionalImageTags"?: string
 4708
 4709			// Include Source Tags
 4710			"includeSourceTags"?: bool
 4711
 4712			// Include Latest Tag
 4713			"includeLatestTag"?: bool
 4714
 4715			// Build Images
 4716			"buildImages"?: bool
 4717
 4718			// Service Name
 4719			"serviceName"?: string
 4720
 4721			// Container Name
 4722			"containerName"?: string
 4723
 4724			// Ports
 4725			"ports"?: string
 4726
 4727			// Working Directory
 4728			"workingDirectory"?: string
 4729
 4730			// Entry Point Override
 4731			"entrypoint"?: string
 4732
 4733			// Command
 4734			"containerCommand"?: string
 4735
 4736			// Run in Background
 4737			"detached"?: bool
 4738
 4739			// Abort on Container Exit
 4740			"abortOnContainerExit"?: bool
 4741
 4742			// Image Digest Compose File
 4743			"imageDigestComposeFile"?: string
 4744
 4745			// Remove Build Options
 4746			"removeBuildOptions"?: bool
 4747
 4748			// Base Resolve Directory
 4749			"baseResolveDirectory"?: string
 4750
 4751			// Output Docker Compose File
 4752			"outputDockerComposeFile"?: string
 4753
 4754			// Command
 4755			"dockerComposeCommand"?: string
 4756
 4757			// Arguments
 4758			"arguments"?: string
 4759
 4760			// Docker Host Service Connection
 4761			"dockerHostEndpoint"?: string
 4762
 4763			// No-op if no Docker Compose File
 4764			"nopIfNoDockerComposeFile"?: bool
 4765
 4766			// Require Additional Docker Compose Files
 4767			"requireAdditionalDockerComposeFiles"?: bool
 4768
 4769			// Working Directory
 4770			"currentWorkingDirectory"?: string
 4771
 4772			// Docker Compose executable Path
 4773			"dockerComposePath"?: string
 4774		})
 4775		...
 4776	}, {
 4777		// Docker Compose
 4778		//
 4779		// Build, push or run multi-container Docker applications. Task
 4780		// can be used with Docker or Azure Container registry.
 4781		"task"!: null | bool | number | =~"^DockerCompose@1$" | [...] | {
 4782			...
 4783		}
 4784
 4785		// Docker Compose inputs
 4786		"inputs"?: null | bool | number | string | [...] | close({
 4787			// Container Registry Type
 4788			"containerregistrytype"?: "Azure Container Registry" | "Container Registry"
 4789
 4790			// Docker Registry Service Connection
 4791			"dockerRegistryEndpoint"?: string
 4792
 4793			// Azure subscription
 4794			"azureSubscription"?: string
 4795
 4796			// Azure Container Registry
 4797			"azureContainerRegistry"?: string
 4798
 4799			// Docker Compose File
 4800			"dockerComposeFile"?: string
 4801
 4802			// Additional Docker Compose Files
 4803			"additionalDockerComposeFiles"?: string
 4804
 4805			// Environment Variables
 4806			"dockerComposeFileArgs"?: string
 4807
 4808			// Project Name
 4809			"projectName"?: string
 4810
 4811			// Qualify Image Names
 4812			"qualifyImageNames"?: bool
 4813
 4814			// Action
 4815			"action"?: "Build services" | "Push services" | "Run services" | "Run a specific service" | "Lock services" | "Write service image digests" | "Combine configuration" | "Run a Docker Compose command"
 4816
 4817			// Additional Image Tags
 4818			"additionalImageTags"?: string
 4819
 4820			// Include Source Tags
 4821			"includeSourceTags"?: bool
 4822
 4823			// Include Latest Tag
 4824			"includeLatestTag"?: bool
 4825
 4826			// Build Images
 4827			"buildImages"?: bool
 4828
 4829			// Service Name
 4830			"serviceName"?: string
 4831
 4832			// Container Name
 4833			"containerName"?: string
 4834
 4835			// Ports
 4836			"ports"?: string
 4837
 4838			// Working Directory
 4839			"workingDirectory"?: string
 4840
 4841			// Entry Point Override
 4842			"entrypoint"?: string
 4843
 4844			// Command
 4845			"containerCommand"?: string
 4846
 4847			// Run in Background
 4848			"detached"?: bool
 4849
 4850			// Abort on Container Exit
 4851			"abortOnContainerExit"?: bool
 4852
 4853			// Image Digest Compose File
 4854			"imageDigestComposeFile"?: string
 4855
 4856			// Remove Build Options
 4857			"removeBuildOptions"?: bool
 4858
 4859			// Base Resolve Directory
 4860			"baseResolveDirectory"?: string
 4861
 4862			// Output Docker Compose File
 4863			"outputDockerComposeFile"?: string
 4864
 4865			// Command
 4866			"dockerComposeCommand"?: string
 4867
 4868			// Arguments
 4869			"arguments"?: string
 4870
 4871			// Docker Host Service Connection
 4872			"dockerHostEndpoint"?: string
 4873
 4874			// No-op if no Docker Compose File
 4875			"nopIfNoDockerComposeFile"?: bool
 4876
 4877			// Require Additional Docker Compose Files
 4878			"requireAdditionalDockerComposeFiles"?: bool
 4879
 4880			// Working Directory
 4881			"currentWorkingDirectory"?: string
 4882
 4883			// Docker Compose executable Path
 4884			"dockerComposePath"?: string
 4885		})
 4886		...
 4887	}, {
 4888		// Azure Monitor alerts (Deprecated)
 4889		//
 4890		// Configure alerts on available metrics for an Azure resource
 4891		// (Deprecated)
 4892		"task"!: null | bool | number | =~"^AzureMonitorAlerts@0$" | [...] | {
 4893			...
 4894		}
 4895
 4896		// Azure Monitor alerts (Deprecated) inputs
 4897		"inputs"!: null | bool | number | string | [...] | close({
 4898			// Azure Subscription
 4899			"azureSubscription"!: string
 4900
 4901			// Resource Group
 4902			"ResourceGroupName"!: string
 4903
 4904			// Resource Type
 4905			"ResourceType"?: "Microsoft.Insights/components" | "Microsoft.Web/sites" | "Microsoft.Storage/storageAccounts" | "Microsoft.Compute/virtualMachines"
 4906
 4907			// Resource name
 4908			"ResourceName"!: string
 4909
 4910			// Alert rules
 4911			"AlertRules"!: string
 4912
 4913			// Subscription owners, contributors and readers
 4914			"NotifyServiceOwners"?: bool
 4915
 4916			// Additional administrator emails
 4917			"NotifyEmails"?: string
 4918		})
 4919		...
 4920	}, {
 4921		// Xamarin Test Cloud
 4922		//
 4923		// [Deprecated] Test mobile apps with Xamarin Test Cloud using
 4924		// Xamarin.UITest. Instead, use the 'App Center test' task.
 4925		"task"!: null | bool | number | =~"^XamarinTestCloud@1$" | [...] | {
 4926			...
 4927		}
 4928
 4929		// Xamarin Test Cloud inputs
 4930		"inputs"!: null | bool | number | string | [...] | close({
 4931			// App file
 4932			"appFile"!: string
 4933
 4934			// dSYM file (iOS only)
 4935			"dsymFile"?: string
 4936
 4937			// Team API key
 4938			"teamApiKey"!: string
 4939
 4940			// User email
 4941			"email"!: string
 4942
 4943			// Devices
 4944			"devices"!: string
 4945
 4946			// Series
 4947			"series"?: string
 4948
 4949			// Test assembly directory
 4950			"testAssemblyDirectory"!: string
 4951
 4952			// Parallelization
 4953			"parallelizationOption"?: "none" | "--fixture-chunk" | "--test-chunk"
 4954
 4955			// System language
 4956			"localeOption"?: "da_DK" | "nl_NL" | "en_GB" | "en_US" | "fr_FR" | "de_DE" | "ja_JP" | "ru_RU" | "es_MX" | "es_ES" | "user"
 4957
 4958			// Other locale
 4959			"userDefinedLocale"?: string
 4960
 4961			// test-cloud.exe location
 4962			"testCloudFile"?: string
 4963
 4964			// Optional arguments
 4965			"optionalArgs"?: string
 4966
 4967			// Publish results to Azure Pipelines
 4968			"publishNUnitResults"?: bool
 4969		})
 4970		...
 4971	}, {
 4972		// Service Fabric application deployment
 4973		//
 4974		// Deploy an Azure Service Fabric application to a cluster
 4975		"task"!: null | bool | number | =~"^ServiceFabricDeploy@1$" | [...] | {
 4976			...
 4977		}
 4978
 4979		// Service Fabric application deployment inputs
 4980		"inputs"!: null | bool | number | string | [...] | close({
 4981			// Application Package
 4982			"applicationPackagePath"!: string
 4983
 4984			// Cluster Service Connection
 4985			"serviceConnectionName"!: string
 4986
 4987			// Publish Profile
 4988			"publishProfilePath"?: string
 4989
 4990			// Application Parameters
 4991			"applicationParameterPath"?: string
 4992
 4993			// Override Application Parameters
 4994			"overrideApplicationParameter"?: bool
 4995
 4996			// Compress Package
 4997			"compressPackage"?: bool
 4998
 4999			// CopyPackageTimeoutSec
 5000			"copyPackageTimeoutSec"?: string
 5001
 5002			// RegisterPackageTimeoutSec
 5003			"registerPackageTimeoutSec"?: string
 5004
 5005			// Overwrite Behavior
 5006			"overwriteBehavior"?: "Always" | "Never" | "SameAppTypeAndVersion"
 5007
 5008			// Skip upgrade for same Type and Version
 5009			"skipUpgradeSameTypeAndVersion"?: bool
 5010
 5011			// Skip package validation
 5012			"skipPackageValidation"?: bool
 5013
 5014			// Use Diff Package
 5015			"useDiffPackage"?: bool
 5016
 5017			// Override All Publish Profile Upgrade Settings
 5018			"overridePublishProfileSettings"?: bool
 5019
 5020			// Upgrade the Application
 5021			"isUpgrade"?: bool
 5022
 5023			// Unregister Unused Versions
 5024			"unregisterUnusedVersions"?: bool
 5025
 5026			// Upgrade Mode
 5027			"upgradeMode"?: "Monitored" | "UnmonitoredAuto" | "UnmonitoredManual"
 5028
 5029			// FailureAction
 5030			"FailureAction"?: "Rollback" | "Manual"
 5031
 5032			// UpgradeReplicaSetCheckTimeoutSec
 5033			"UpgradeReplicaSetCheckTimeoutSec"?: string
 5034
 5035			// TimeoutSec
 5036			"TimeoutSec"?: string
 5037
 5038			// ForceRestart
 5039			"ForceRestart"?: bool
 5040
 5041			// HealthCheckRetryTimeoutSec
 5042			"HealthCheckRetryTimeoutSec"?: string
 5043
 5044			// HealthCheckWaitDurationSec
 5045			"HealthCheckWaitDurationSec"?: string
 5046
 5047			// HealthCheckStableDurationSec
 5048			"HealthCheckStableDurationSec"?: string
 5049
 5050			// UpgradeDomainTimeoutSec
 5051			"UpgradeDomainTimeoutSec"?: string
 5052
 5053			// ConsiderWarningAsError
 5054			"ConsiderWarningAsError"?: bool
 5055
 5056			// DefaultServiceTypeHealthPolicy
 5057			"DefaultServiceTypeHealthPolicy"?: string
 5058
 5059			// MaxPercentUnhealthyDeployedApplications
 5060			"MaxPercentUnhealthyDeployedApplications"?: string
 5061
 5062			// UpgradeTimeoutSec
 5063			"UpgradeTimeoutSec"?: string
 5064
 5065			// ServiceTypeHealthPolicyMap
 5066			"ServiceTypeHealthPolicyMap"?: string
 5067
 5068			// Configure Docker settings
 5069			"configureDockerSettings"?: bool
 5070
 5071			// Registry Credentials Source
 5072			"registryCredentials"?: "AzureResourceManagerEndpoint" | "ContainerRegistryEndpoint" | "UsernamePassword"
 5073
 5074			// Docker Registry Service Connection
 5075			"dockerRegistryConnection"?: string
 5076
 5077			// Azure subscription
 5078			"azureSubscription"?: string
 5079
 5080			// Registry User Name
 5081			"registryUserName"?: string
 5082
 5083			// Registry Password
 5084			"registryPassword"?: string
 5085
 5086			// Password Encrypted
 5087			"passwordEncrypted"?: bool
 5088		})
 5089		...
 5090	}, {
 5091		// Xcode
 5092		//
 5093		// Build, test, or archive an Xcode workspace on macOS. Optionally
 5094		// package an app.
 5095		"task"!: null | bool | number | =~"^Xcode@5$" | [...] | {
 5096			...
 5097		}
 5098
 5099		// Xcode inputs
 5100		"inputs"?: null | bool | number | string | [...] | close({
 5101			// Actions
 5102			"actions"?: string
 5103
 5104			// Configuration
 5105			"configuration"?: string
 5106
 5107			// SDK
 5108			"sdk"?: string
 5109
 5110			// Workspace or project path
 5111			"xcWorkspacePath"?: string
 5112
 5113			// Scheme
 5114			"scheme"?: string
 5115
 5116			// Xcode version
 5117			"xcodeVersion"?: "8" | "9" | "10" | "11" | "12" | "13" | "default" | "specifyPath"
 5118
 5119			// Xcode developer path
 5120			"xcodeDeveloperDir"?: string
 5121
 5122			// Create app package
 5123			"packageApp"?: bool
 5124
 5125			// Archive path
 5126			"archivePath"?: string
 5127
 5128			// Export path
 5129			"exportPath"?: string
 5130
 5131			// Export options
 5132			"exportOptions"?: "auto" | "plist" | "specify"
 5133
 5134			// Export method
 5135			"exportMethod"?: string
 5136
 5137			// Team ID
 5138			"exportTeamId"?: string
 5139
 5140			// Export options plist
 5141			"exportOptionsPlist"?: string
 5142
 5143			// Export arguments
 5144			"exportArgs"?: string
 5145
 5146			// Signing style
 5147			"signingOption"?: "nosign" | "default" | "manual" | "auto"
 5148
 5149			// Signing identity
 5150			"signingIdentity"?: string
 5151
 5152			// Provisioning profile UUID
 5153			"provisioningProfileUuid"?: string
 5154
 5155			// Provisioning profile name
 5156			"provisioningProfileName"?: string
 5157
 5158			// Team ID
 5159			"teamId"?: string
 5160
 5161			// Destination platform
 5162			"destinationPlatformOption"?: "default" | "iOS" | "tvOS" | "macOS" | "custom"
 5163
 5164			// Custom destination platform
 5165			"destinationPlatform"?: string
 5166
 5167			// Destination type
 5168			"destinationTypeOption"?: "simulators" | "devices"
 5169
 5170			// Simulator
 5171			"destinationSimulators"?: string
 5172
 5173			// Device
 5174			"destinationDevices"?: string
 5175
 5176			// Arguments
 5177			"args"?: string
 5178
 5179			// Working directory
 5180			"workingDirectory"?: string
 5181
 5182			// Use xcpretty
 5183			"useXcpretty"?: bool
 5184
 5185			// Xcpretty arguments
 5186			"xcprettyArgs"?: string
 5187
 5188			// Publish test results to Azure Pipelines
 5189			"publishJUnitResults"?: bool
 5190
 5191			// Test run title
 5192			"testRunTitle"?: string
 5193		})
 5194		...
 5195	}, {
 5196		// Xcode Build
 5197		//
 5198		// Build an Xcode workspace on macOS
 5199		"task"!: null | bool | number | =~"^Xcode@3$" | [...] | {
 5200			...
 5201		}
 5202
 5203		// Xcode Build inputs
 5204		"inputs"?: null | bool | number | string | [...] | close({
 5205			// Actions
 5206			"actions"?: string
 5207
 5208			// Configuration
 5209			"configuration"?: string
 5210
 5211			// SDK
 5212			"sdk"?: string
 5213
 5214			// Workspace/Project Path
 5215			"xcWorkspacePath"?: string
 5216
 5217			// Scheme
 5218			"scheme"?: string
 5219
 5220			// Create App Package
 5221			"packageApp"?: bool
 5222
 5223			// Archive Path
 5224			"archivePath"?: string
 5225
 5226			// Export Path
 5227			"exportPath"?: string
 5228
 5229			// Export Options
 5230			"exportOptions"?: "auto" | "plist" | "specify"
 5231
 5232			// Export Method
 5233			"exportMethod"?: string
 5234
 5235			// Team ID
 5236			"exportTeamId"?: string
 5237
 5238			// Export Options Plist
 5239			"exportOptionsPlist"?: string
 5240
 5241			// Export Arguments
 5242			"exportArgs"?: string
 5243
 5244			// Automatic Signing
 5245			"xcode8AutomaticSigning"?: bool
 5246
 5247			// Team ID
 5248			"teamId"?: string
 5249
 5250			// Override Using
 5251			"signMethod"?: "file" | "id"
 5252
 5253			// Signing Identity
 5254			"iosSigningIdentity"?: string
 5255
 5256			// Unlock Default Keychain
 5257			"unlockDefaultKeychain"?: bool
 5258
 5259			// Default Keychain Password
 5260			"defaultKeychainPassword"?: string
 5261
 5262			// Provisioning Profile UUID
 5263			"provProfileUuid"?: string
 5264
 5265			// P12 Certificate File
 5266			"p12"?: string
 5267
 5268			// P12 Password
 5269			"p12pwd"?: string
 5270
 5271			// Provisioning Profile File
 5272			"provProfile"?: string
 5273
 5274			// Remove Profile After Build
 5275			"removeProfile"?: bool
 5276
 5277			// Arguments
 5278			"args"?: string
 5279
 5280			// Working Directory
 5281			"cwd"?: string
 5282
 5283			// Output Directory
 5284			"outputPattern"?: string
 5285
 5286			// Xcode Developer Path
 5287			"xcodeDeveloperDir"?: string
 5288
 5289			// Use xcpretty
 5290			"useXcpretty"?: bool
 5291
 5292			// Publish to VSTS/TFS
 5293			"publishJUnitResults"?: bool
 5294		})
 5295		...
 5296	}, {
 5297		// Xcode
 5298		//
 5299		// Build, test, or archive an Xcode workspace on macOS. Optionally
 5300		// package an app.
 5301		"task"!: null | bool | number | =~"^Xcode@4$" | [...] | {
 5302			...
 5303		}
 5304
 5305		// Xcode inputs
 5306		"inputs"?: null | bool | number | string | [...] | close({
 5307			// Actions
 5308			"actions"?: string
 5309
 5310			// Configuration
 5311			"configuration"?: string
 5312
 5313			// SDK
 5314			"sdk"?: string
 5315
 5316			// Workspace or project path
 5317			"xcWorkspacePath"?: string
 5318
 5319			// Scheme
 5320			"scheme"?: string
 5321
 5322			// Xcode version
 5323			"xcodeVersion"?: "8" | "9" | "default" | "specifyPath"
 5324
 5325			// Xcode developer path
 5326			"xcodeDeveloperDir"?: string
 5327
 5328			// Create app package
 5329			"packageApp"?: bool
 5330
 5331			// Archive path
 5332			"archivePath"?: string
 5333
 5334			// Export path
 5335			"exportPath"?: string
 5336
 5337			// Export options
 5338			"exportOptions"?: "auto" | "plist" | "specify"
 5339
 5340			// Export method
 5341			"exportMethod"?: string
 5342
 5343			// Team ID
 5344			"exportTeamId"?: string
 5345
 5346			// Export options plist
 5347			"exportOptionsPlist"?: string
 5348
 5349			// Export arguments
 5350			"exportArgs"?: string
 5351
 5352			// Signing style
 5353			"signingOption"?: "nosign" | "default" | "manual" | "auto"
 5354
 5355			// Signing identity
 5356			"signingIdentity"?: string
 5357
 5358			// Provisioning profile UUID
 5359			"provisioningProfileUuid"?: string
 5360
 5361			// Team ID
 5362			"teamId"?: string
 5363
 5364			// Destination platform
 5365			"destinationPlatformOption"?: "default" | "iOS" | "tvOS" | "macOS" | "custom"
 5366
 5367			// Custom destination platform
 5368			"destinationPlatform"?: string
 5369
 5370			// Destination type
 5371			"destinationTypeOption"?: "simulators" | "devices"
 5372
 5373			// Simulator
 5374			"destinationSimulators"?: string
 5375
 5376			// Device
 5377			"destinationDevices"?: string
 5378
 5379			// Arguments
 5380			"args"?: string
 5381
 5382			// Working directory
 5383			"workingDirectory"?: string
 5384
 5385			// Output directory
 5386			"outputPattern"?: string
 5387
 5388			// Use xcpretty
 5389			"useXcpretty"?: bool
 5390
 5391			// Publish test results to VSTS/TFS
 5392			"publishJUnitResults"?: bool
 5393		})
 5394		...
 5395	}, {
 5396		// Xcode Build
 5397		//
 5398		// Build an Xcode workspace on Mac OS
 5399		"task"!: null | bool | number | =~"^Xcode@2$" | [...] | {
 5400			...
 5401		}
 5402
 5403		// Xcode Build inputs
 5404		"inputs"?: null | bool | number | string | [...] | close({
 5405			// Actions
 5406			"actions"?: string
 5407
 5408			// Configuration
 5409			"configuration"?: string
 5410
 5411			// SDK
 5412			"sdk"?: string
 5413
 5414			// Workspace/Project Path
 5415			"xcWorkspacePath"?: string
 5416
 5417			// Scheme
 5418			"scheme"?: string
 5419
 5420			// Create App Package
 5421			"packageApp"?: bool
 5422
 5423			// Create Package (IPA) using
 5424			"packageTool"?: "xcrun" | "xcodebuild"
 5425
 5426			// Archive Path
 5427			"archivePath"?: string
 5428
 5429			// Export Path
 5430			"exportPath"?: string
 5431
 5432			// Export Options
 5433			"exportOptions"?: "auto" | "plist" | "specify"
 5434
 5435			// Export Method
 5436			"exportMethod"?: string
 5437
 5438			// Team ID
 5439			"exportTeamId"?: string
 5440
 5441			// Export Options Plist
 5442			"exportOptionsPlist"?: string
 5443
 5444			// Automatic Signing
 5445			"xcode8AutomaticSigning"?: bool
 5446
 5447			// Team ID
 5448			"teamId"?: string
 5449
 5450			// Override Using
 5451			"signMethod"?: "file" | "id"
 5452
 5453			// Signing Identity
 5454			"iosSigningIdentity"?: string
 5455
 5456			// Unlock Default Keychain
 5457			"unlockDefaultKeychain"?: bool
 5458
 5459			// Default Keychain Password
 5460			"defaultKeychainPassword"?: string
 5461
 5462			// Provisioning Profile UUID
 5463			"provProfileUuid"?: string
 5464
 5465			// P12 Certificate File
 5466			"p12"?: string
 5467
 5468			// P12 Password
 5469			"p12pwd"?: string
 5470
 5471			// Provisioning Profile File
 5472			"provProfile"?: string
 5473
 5474			// Remove Profile After Build
 5475			"removeProfile"?: bool
 5476
 5477			// Arguments
 5478			"args"?: string
 5479
 5480			// Working Directory
 5481			"cwd"?: string
 5482
 5483			// Output Directory
 5484			"outputPattern"?: string
 5485
 5486			// Xcode Developer Path
 5487			"xcodeDeveloperDir"?: string
 5488
 5489			// Use xcpretty
 5490			"useXcpretty"?: bool
 5491
 5492			// Publish to VSTS/TFS
 5493			"publishJUnitResults"?: bool
 5494
 5495			// Use xctool
 5496			"useXctool"?: bool
 5497
 5498			// xctool Test Reporter Format
 5499			"xctoolReporter"?: string
 5500		})
 5501		...
 5502	}, {
 5503		// NuGet publisher
 5504		//
 5505		// Deprecated: use the “NuGet” task instead. It works with the new
 5506		// Tool Installer framework so you can easily use new versions of
 5507		// NuGet without waiting for a task update, provides better
 5508		// support for authenticated feeds outside this
 5509		// organization/collection, and uses NuGet 4 by default.
 5510		"task"!: null | bool | number | =~"^NuGetPublisher@0$" | [...] | {
 5511			...
 5512		}
 5513
 5514		// NuGet publisher inputs
 5515		"inputs"?: null | bool | number | string | [...] | close({
 5516			// Path/Pattern to nupkg
 5517			"searchPattern"?: string
 5518
 5519			// Feed type
 5520			"nuGetFeedType"?: "external" | "internal"
 5521
 5522			// NuGet Service Connection
 5523			"connectedServiceName"?: string
 5524
 5525			// Internal Feed URL
 5526			"feedName"?: string
 5527
 5528			// NuGet Arguments
 5529			"nuGetAdditionalArgs"?: string
 5530
 5531			// Verbosity
 5532			"verbosity"?: "-" | "Quiet" | "Normal" | "Detailed"
 5533
 5534			// NuGet Version
 5535			"nuGetVersion"?: "3.3.0" | "3.5.0.1829" | "4.0.0.2283" | "custom"
 5536
 5537			// Path to NuGet.exe
 5538			"nuGetPath"?: string
 5539
 5540			// Continue if no packages match the "Path/Pattern to nupkg"
 5541			"continueOnEmptyNupkgMatch"?: bool
 5542		})
 5543		...
 5544	}, {
 5545		// Query work items
 5546		//
 5547		// Execute a work item query and check the number of items
 5548		// returned
 5549		"task"!: null | bool | number | =~"^queryWorkItems@0$" | [...] | {
 5550			...
 5551		}
 5552
 5553		// Query work items inputs
 5554		"inputs"!: null | bool | number | string | [...] | close({
 5555			// Query
 5556			"queryId"!: string
 5557
 5558			// Upper threshold
 5559			"maxThreshold"?: string
 5560
 5561			// Lower threshold
 5562			"minThreshold"?: string
 5563		})
 5564		...
 5565	}, {
 5566		// Azure Web App for Containers
 5567		//
 5568		// Deploy containers to Azure App Service
 5569		"task"!: null | bool | number | =~"^AzureWebAppContainer@1$" | [...] | {
 5570			...
 5571		}
 5572
 5573		// Azure Web App for Containers inputs
 5574		"inputs"!: null | bool | number | string | [...] | close({
 5575			// Azure subscription
 5576			"azureSubscription"!: string
 5577
 5578			// App name
 5579			"appName"!: string
 5580
 5581			// Deploy to Slot or App Service Environment
 5582			"deployToSlotOrASE"?: bool
 5583
 5584			// Resource group
 5585			"resourceGroupName"?: string
 5586
 5587			// Slot
 5588			"slotName"?: string
 5589
 5590			// Image name
 5591			"containers"?: string
 5592
 5593			// Configuration File
 5594			"multicontainerConfigFile"?: string
 5595
 5596			// Startup command
 5597			"containerCommand"?: string
 5598
 5599			// App settings
 5600			"appSettings"?: string
 5601
 5602			// Configuration settings
 5603			"configurationStrings"?: string
 5604		})
 5605		...
 5606	}, {
 5607		// SQL Server database deploy
 5608		//
 5609		// Deploy a SQL Server database using DACPAC or SQL scripts
 5610		"task"!: null | bool | number | =~"^SqlDacpacDeploymentOnMachineGroup@0$" | [...] | {
 5611			...
 5612		}
 5613
 5614		// SQL Server database deploy inputs
 5615		"inputs"?: null | bool | number | string | [...] | close({
 5616			// Deploy SQL Using
 5617			"TaskType"?: "dacpac" | "sqlQuery" | "sqlInline"
 5618
 5619			// DACPAC File
 5620			"DacpacFile"?: string
 5621
 5622			// Sql File
 5623			"SqlFile"?: string
 5624
 5625			// Execute within a transaction
 5626			"ExecuteInTransaction"?: bool
 5627
 5628			// Acquire an exclusive app lock while executing script(s)
 5629			"ExclusiveLock"?: bool
 5630
 5631			// App lock name
 5632			"AppLockName"?: string
 5633
 5634			// Inline Sql
 5635			"InlineSql"?: string
 5636
 5637			// Specify SQL Using
 5638			"TargetMethod"?: "server" | "connectionString" | "publishProfile"
 5639
 5640			// Server Name
 5641			"ServerName"?: string
 5642
 5643			// Database Name
 5644			"DatabaseName"?: string
 5645
 5646			// Authentication
 5647			"AuthScheme"?: "windowsAuthentication" | "sqlServerAuthentication"
 5648
 5649			// SQL User name
 5650			"SqlUsername"?: string
 5651
 5652			// SQL Password
 5653			"SqlPassword"?: string
 5654
 5655			// Connection String
 5656			"ConnectionString"?: string
 5657
 5658			// Publish Profile
 5659			"PublishProfile"?: string
 5660
 5661			// Additional Arguments
 5662			"AdditionalArguments"?: string
 5663
 5664			// Additional Arguments
 5665			"AdditionalArgumentsSql"?: string
 5666		})
 5667		...
 5668	}, {
 5669		// Cache (Beta)
 5670		//
 5671		// Cache files between runs
 5672		"task"!: null | bool | number | =~"^CacheBeta@1$" | [...] | {
 5673			...
 5674		}
 5675
 5676		// Cache (Beta) inputs
 5677		"inputs"!: null | bool | number | string | [...] | close({
 5678			// Key
 5679			"key"!: string
 5680
 5681			// Path
 5682			"path"!: string
 5683
 5684			// Cache hit variable
 5685			"cacheHitVar"?: string
 5686
 5687			// Additional restore key prefixes
 5688			"restoreKeys"?: string
 5689		})
 5690		...
 5691	}, {
 5692		// Cache (Beta)
 5693		//
 5694		// Cache files between runs
 5695		"task"!: null | bool | number | =~"^CacheBeta@0$" | [...] | {
 5696			...
 5697		}
 5698
 5699		// Cache (Beta) inputs
 5700		"inputs"!: null | bool | number | string | [...] | close({
 5701			// Key
 5702			"key"!: string
 5703
 5704			// Path
 5705			"path"!: string
 5706
 5707			// Cache hit variable
 5708			"cacheHitVar"?: string
 5709		})
 5710		...
 5711	}, {
 5712		// Cache
 5713		//
 5714		// Cache files between runs
 5715		"task"!: null | bool | number | =~"^Cache@2$" | [...] | {
 5716			...
 5717		}
 5718
 5719		// Cache inputs
 5720		"inputs"!: null | bool | number | string | [...] | close({
 5721			// Key
 5722			"key"!: string
 5723
 5724			// Path
 5725			"path"!: string
 5726
 5727			// Cache hit variable
 5728			"cacheHitVar"?: string
 5729
 5730			// Additional restore key prefixes
 5731			"restoreKeys"?: string
 5732		})
 5733		...
 5734	}, {
 5735		// CMake
 5736		//
 5737		// Build with the CMake cross-platform build system
 5738		"task"!: null | bool | number | =~"^CMake@1$" | [...] | {
 5739			...
 5740		}
 5741
 5742		// CMake inputs
 5743		"inputs"?: null | bool | number | string | [...] | close({
 5744			// Working Directory
 5745			"workingDirectory"?: string
 5746
 5747			// Arguments
 5748			"cmakeArgs"?: string
 5749
 5750			// Run cmake command inside shell
 5751			"runInsideShell"?: bool
 5752		})
 5753		...
 5754	}, {
 5755		// Mobile Center Test
 5756		//
 5757		// Test mobile app packages with Visual Studio Mobile Center.
 5758		"task"!: null | bool | number | =~"^VSMobileCenterTest@0$" | [...] | {
 5759			...
 5760		}
 5761
 5762		// Mobile Center Test inputs
 5763		"inputs"!: null | bool | number | string | [...] | close({
 5764			// Binary Application File Path
 5765			"app"!: string
 5766
 5767			// Artifacts Directory
 5768			"artifactsDir"?: string
 5769
 5770			// Prepare Tests
 5771			"enablePrepare"?: bool
 5772
 5773			// Test Framework
 5774			"framework"?: "appium" | "espresso" | "calabash" | "uitest" | "xcuitest"
 5775
 5776			// Build Directory
 5777			"appiumBuildDir"?: string
 5778
 5779			// Build Directory
 5780			"espressoBuildDir"?: string
 5781
 5782			// Test APK Path
 5783			"espressoTestApkPath"?: string
 5784
 5785			// Project Directory
 5786			"calabashProjectDir"?: string
 5787
 5788			// Cucumber Config File
 5789			"calabashConfigFile"?: string
 5790
 5791			// Profile to run
 5792			"calabashProfile"?: string
 5793
 5794			// Skip Configuration Check
 5795			"calabashSkipConfigCheck"?: bool
 5796
 5797			// Build Directory
 5798			"uitestBuildDir"?: string
 5799
 5800			// Store File
 5801			"uitestStoreFile"?: string
 5802
 5803			// Store Password
 5804			"uitestStorePass"?: string
 5805
 5806			// Key Alias
 5807			"uitestKeyAlias"?: string
 5808
 5809			// Key Password
 5810			"uitestKeyPass"?: string
 5811
 5812			// Test Tools Directory
 5813			"uitestToolsDir"?: string
 5814
 5815			// Signing Information
 5816			"signInfo"?: string
 5817
 5818			// Build Directory
 5819			"xcuitestBuildDir"?: string
 5820
 5821			// Test IPA Path
 5822			"xcuitestTestIpaPath"?: string
 5823
 5824			// Additional Options
 5825			"prepareOpts"?: string
 5826
 5827			// Run Tests
 5828			"enableRun"?: bool
 5829
 5830			// Authentication Method
 5831			"credsType"?: "serviceEndpoint" | "inputs"
 5832
 5833			// Mobile Center Connection
 5834			"serverEndpoint"?: string
 5835
 5836			// Mobile Center Username
 5837			"username"?: string
 5838
 5839			// Mobile Center Password
 5840			"password"?: string
 5841
 5842			// App Slug
 5843			"appSlug"?: string
 5844
 5845			// Devices
 5846			"devices"?: string
 5847
 5848			// Test Series
 5849			"series"?: string
 5850
 5851			// dSYM Directory
 5852			"dsymDir"?: string
 5853
 5854			// System Language
 5855			"locale"?: "da_DK" | "nl_NL" | "en_GB" | "en_US" | "fr_FR" | "de_DE" | "ja_JP" | "ru_RU" | "es_MX" | "es_ES" | "user"
 5856
 5857			// Other Locale
 5858			"userDefinedLocale"?: string
 5859
 5860			// Addtional Options for Login
 5861			"loginOpts"?: string
 5862
 5863			// Additional Options for Run
 5864			"runOpts"?: string
 5865
 5866			// Do not wait for test result
 5867			"async"?: bool
 5868
 5869			// mobile-center CLI Location
 5870			"cliLocationOverride"?: string
 5871
 5872			// Enable Debug Output
 5873			"debug"?: bool
 5874		})
 5875		...
 5876	}, {
 5877		// App Center test
 5878		//
 5879		// Test app packages with Visual Studio App Center
 5880		"task"!: null | bool | number | =~"^AppCenterTest@1$" | [...] | {
 5881			...
 5882		}
 5883
 5884		// App Center test inputs
 5885		"inputs"!: null | bool | number | string | [...] | close({
 5886			// Binary application file path
 5887			"appFile"!: string
 5888
 5889			// Artifacts directory
 5890			"artifactsDirectory"?: string
 5891
 5892			// Prepare tests
 5893			"prepareTests"?: bool
 5894
 5895			// Test framework
 5896			"frameworkOption"?: "appium" | "espresso" | "calabash" | "uitest" | "xcuitest"
 5897
 5898			// Build directory
 5899			"appiumBuildDirectory"?: string
 5900
 5901			// Build directory
 5902			"espressoBuildDirectory"?: string
 5903
 5904			// Test APK path
 5905			"espressoTestApkFile"?: string
 5906
 5907			// Project directory
 5908			"calabashProjectDirectory"?: string
 5909
 5910			// Cucumber config file
 5911			"calabashConfigFile"?: string
 5912
 5913			// Profile to run
 5914			"calabashProfile"?: string
 5915
 5916			// Skip Configuration Check
 5917			"calabashSkipConfigCheck"?: bool
 5918
 5919			// Build directory
 5920			"uiTestBuildDirectory"?: string
 5921
 5922			// Store file
 5923			"uitestStorePath"?: string
 5924
 5925			// Store password
 5926			"uiTestStorePassword"?: string
 5927
 5928			// Key alias
 5929			"uitestKeyAlias"?: string
 5930
 5931			// Key password
 5932			"uiTestKeyPassword"?: string
 5933
 5934			// Test tools directory
 5935			"uiTestToolsDirectory"?: string
 5936
 5937			// Signing information
 5938			"signInfo"?: string
 5939
 5940			// Build directory
 5941			"xcUITestBuildDirectory"?: string
 5942
 5943			// Test IPA path
 5944			"xcUITestIpaFile"?: string
 5945
 5946			// Additional options
 5947			"prepareOptions"?: string
 5948
 5949			// Run tests
 5950			"runTests"?: bool
 5951
 5952			// Authentication method
 5953			"credentialsOption"?: "serviceEndpoint" | "inputs"
 5954
 5955			// App Center service connection
 5956			"serverEndpoint"?: string
 5957
 5958			// App Center username
 5959			"username"?: string
 5960
 5961			// App Center password
 5962			"password"?: string
 5963
 5964			// App slug
 5965			"appSlug"?: string
 5966
 5967			// Devices
 5968			"devices"?: string
 5969
 5970			// Test series
 5971			"series"?: string
 5972
 5973			// dSYM directory
 5974			"dsymDirectory"?: string
 5975
 5976			// System language
 5977			"localeOption"?: "da_DK" | "nl_NL" | "en_GB" | "en_US" | "fr_FR" | "de_DE" | "ja_JP" | "ru_RU" | "es_MX" | "es_ES" | "user"
 5978
 5979			// Other locale
 5980			"userDefinedLocale"?: string
 5981
 5982			// Additional options for login
 5983			"loginOptions"?: string
 5984
 5985			// Additional options for run
 5986			"runOptions"?: string
 5987
 5988			// Do not wait for test result
 5989			"skipWaitingForResults"?: bool
 5990
 5991			// App Center CLI location
 5992			"cliFile"?: string
 5993
 5994			// Enable debug output
 5995			"showDebugOutput"?: bool
 5996		})
 5997		...
 5998	}, {
 5999		// Download secure file
 6000		//
 6001		// Download a secure file to the agent machine
 6002		"task"!: null | bool | number | =~"^DownloadSecureFile@1$" | [...] | {
 6003			...
 6004		}
 6005
 6006		// Download secure file inputs
 6007		"inputs"!: null | bool | number | string | [...] | close({
 6008			// Secure File
 6009			"secureFile"!: string
 6010
 6011			// Retry Count
 6012			"retryCount"?: string
 6013
 6014			// Socket Timeout
 6015			"socketTimeout"?: string
 6016		})
 6017		...
 6018	}, {
 6019		// Azure Container Apps Deploy
 6020		//
 6021		// An Azure DevOps Task to build and deploy Azure Container Apps.
 6022		"task"!: null | bool | number | =~"^AzureContainerApps@0$" | [...] | {
 6023			...
 6024		}
 6025
 6026		// Azure Container Apps Deploy inputs
 6027		"inputs"!: null | bool | number | string | [...] | close({
 6028			// Working Directory
 6029			"workingDirectory"?: string
 6030
 6031			// Application source path
 6032			"appSourcePath"?: string
 6033
 6034			// Azure Resource Manager connection
 6035			"azureSubscription"!: string
 6036
 6037			// Azure Container Registry name
 6038			"acrName"?: string
 6039
 6040			// Azure Container Registry username
 6041			"acrUsername"?: string
 6042
 6043			// Azure Container Registry password
 6044			"acrPassword"?: string
 6045
 6046			// Dockerfile path
 6047			"dockerfilePath"?: string
 6048
 6049			// Docker image to build
 6050			"imageToBuild"?: string
 6051
 6052			// Docker image to deploy
 6053			"imageToDeploy"?: string
 6054
 6055			// Azure Container App name
 6056			"containerAppName"?: string
 6057
 6058			// Azure resource group name
 6059			"resourceGroup"?: string
 6060
 6061			// Azure Container App environment
 6062			"containerAppEnvironment"?: string
 6063
 6064			// Application runtime stack
 6065			"runtimeStack"?: string
 6066
 6067			// Application target port
 6068			"targetPort"?: string
 6069
 6070			// Location of the Container App
 6071			"location"?: string
 6072
 6073			// Environment variables
 6074			"environmentVariables"?: string
 6075
 6076			// Ingress setting
 6077			"ingress"?: string
 6078
 6079			// YAML configuration file path
 6080			"yamlConfigPath"?: string
 6081
 6082			// Disable telemetry
 6083			"disableTelemetry"?: bool
 6084		})
 6085		...
 6086	}, {
 6087		// Azure Container Apps Deploy
 6088		//
 6089		// An Azure DevOps Task to build and deploy Azure Container Apps.
 6090		"task"!: null | bool | number | =~"^AzureContainerApps@1$" | [...] | {
 6091			...
 6092		}
 6093
 6094		// Azure Container Apps Deploy inputs
 6095		"inputs"!: null | bool | number | string | [...] | close({
 6096			// Working Directory
 6097			"workingDirectory"?: string
 6098
 6099			// Application source path
 6100			"appSourcePath"?: string
 6101
 6102			// Azure Resource Manager connection
 6103			"azureSubscription"!: string
 6104
 6105			// Azure Container Registry name
 6106			"acrName"?: string
 6107
 6108			// Azure Container Registry username
 6109			"acrUsername"?: string
 6110
 6111			// Azure Container Registry password
 6112			"acrPassword"?: string
 6113
 6114			// Dockerfile path
 6115			"dockerfilePath"?: string
 6116
 6117			// Docker image to build
 6118			"imageToBuild"?: string
 6119
 6120			// Docker image to deploy
 6121			"imageToDeploy"?: string
 6122
 6123			// Azure Container App name
 6124			"containerAppName"?: string
 6125
 6126			// Azure resource group name
 6127			"resourceGroup"?: string
 6128
 6129			// Azure Container App environment
 6130			"containerAppEnvironment"?: string
 6131
 6132			// Application runtime stack
 6133			"runtimeStack"?: string
 6134
 6135			// Application target port
 6136			"targetPort"?: string
 6137
 6138			// Location of the Container App
 6139			"location"?: string
 6140
 6141			// Environment variables
 6142			"environmentVariables"?: string
 6143
 6144			// Ingress setting
 6145			"ingress"?: string
 6146
 6147			// YAML configuration file path
 6148			"yamlConfigPath"?: string
 6149
 6150			// Disable telemetry
 6151			"disableTelemetry"?: bool
 6152		})
 6153		...
 6154	}, {
 6155		// Use Ruby version
 6156		//
 6157		// Use the specified version of Ruby from the tool cache,
 6158		// optionally adding it to the PATH
 6159		"task"!: null | bool | number | =~"^UseRubyVersion@0$" | [...] | {
 6160			...
 6161		}
 6162
 6163		// Use Ruby version inputs
 6164		"inputs"?: null | bool | number | string | [...] | close({
 6165			// Version spec
 6166			"versionSpec"?: string
 6167
 6168			// Add to PATH
 6169			"addToPath"?: bool
 6170		})
 6171		...
 6172	}, {
 6173		// Grunt
 6174		//
 6175		// Run the Grunt JavaScript task runner
 6176		"task"!: null | bool | number | =~"^Grunt@0$" | [...] | {
 6177			...
 6178		}
 6179
 6180		// Grunt inputs
 6181		"inputs"?: null | bool | number | string | [...] | close({
 6182			// Grunt File Path
 6183			"gruntFile"?: string
 6184
 6185			// Grunt Task(s)
 6186			"targets"?: string
 6187
 6188			// Arguments
 6189			"arguments"?: string
 6190
 6191			// Working Directory
 6192			"workingDirectory"?: string
 6193
 6194			// grunt-cli location
 6195			"gruntCli"?: string
 6196
 6197			// Publish to Azure Pipelines
 6198			"publishJUnitResults"?: bool
 6199
 6200			// Test Results Files
 6201			"testResultsFiles"?: string
 6202
 6203			// Test Run Title
 6204			"testRunTitle"?: string
 6205
 6206			// Enable Code Coverage
 6207			"enableCodeCoverage"?: bool
 6208
 6209			// Test Framework
 6210			"testFramework"?: "Mocha" | "Jasmine"
 6211
 6212			// Source Files
 6213			"srcFiles"?: string
 6214
 6215			// Test Script Files
 6216			"testFiles"?: string
 6217		})
 6218		...
 6219	}, {
 6220		// Azure SQL Database deployment
 6221		//
 6222		// Deploy an Azure SQL Database using DACPAC or run scripts using
 6223		// SQLCMD
 6224		"task"!: null | bool | number | =~"^SqlAzureDacpacDeployment@1$" | [...] | {
 6225			...
 6226		}
 6227
 6228		// Azure SQL Database deployment inputs
 6229		"inputs"?: null | bool | number | string | [...] | close({
 6230			// Azure Service Connection Type
 6231			"azureConnectionType"?: "ConnectedServiceName" | "ConnectedServiceNameARM"
 6232
 6233			// Azure Classic Subscription
 6234			"azureClassicSubscription"?: string
 6235
 6236			// Azure Subscription
 6237			"azureSubscription"?: string
 6238
 6239			// Authentication Type
 6240			"AuthenticationType"?: "server" | "aadAuthenticationPassword" | "aadAuthenticationIntegrated" | "connectionString" | "servicePrincipal"
 6241
 6242			// Azure SQL Server
 6243			"ServerName"?: string
 6244
 6245			// Database
 6246			"DatabaseName"?: string
 6247
 6248			// Login
 6249			"SqlUsername"?: string
 6250
 6251			// Password
 6252			"SqlPassword"?: string
 6253
 6254			// Login
 6255			"aadSqlUsername"?: string
 6256
 6257			// Password
 6258			"aadSqlPassword"?: string
 6259
 6260			// Connection String
 6261			"ConnectionString"?: string
 6262
 6263			// Deploy type
 6264			"deployType"?: "DacpacTask" | "SqlTask" | "InlineSqlTask"
 6265
 6266			// Action
 6267			"DeploymentAction"?: "Publish" | "Extract" | "Export" | "Import" | "Script" | "DriftReport" | "DeployReport"
 6268
 6269			// DACPAC File
 6270			"DacpacFile"?: string
 6271
 6272			// BACPAC File
 6273			"BacpacFile"?: string
 6274
 6275			// SQL Script
 6276			"SqlFile"?: string
 6277
 6278			// Inline SQL Script
 6279			"SqlInline"?: string
 6280
 6281			// Publish Profile
 6282			"PublishProfile"?: string
 6283
 6284			// Additional SqlPackage.exe Arguments
 6285			"AdditionalArguments"?: string
 6286
 6287			// Additional Invoke-Sqlcmd Arguments
 6288			"SqlAdditionalArguments"?: string
 6289
 6290			// Additional Invoke-Sqlcmd Arguments
 6291			"InlineAdditionalArguments"?: string
 6292
 6293			// Specify Firewall Rules Using
 6294			"IpDetectionMethod"?: "AutoDetect" | "IPAddressRange"
 6295
 6296			// Start IP Address
 6297			"StartIpAddress"?: string
 6298
 6299			// End IP Address
 6300			"EndIpAddress"?: string
 6301
 6302			// Delete Rule After Task Ends
 6303			"DeleteFirewallRule"?: bool
 6304		})
 6305		...
 6306	}, {
 6307		// Container Structure Test
 6308		//
 6309		// Uses container-structure-test
 6310		// (https://github.com/GoogleContainerTools/container-structure-test)
 6311		// to validate the structure of an image based on four categories
 6312		// of tests - command tests, file existence tests, file content
 6313		// tests and metadata tests
 6314		"task"!: null | bool | number | =~"^ContainerStructureTest@0$" | [...] | {
 6315			...
 6316		}
 6317
 6318		// Container Structure Test inputs
 6319		"inputs"!: null | bool | number | string | [...] | close({
 6320			// Docker registry service connection
 6321			"dockerRegistryServiceConnection"!: string
 6322
 6323			// Container repository
 6324			"repository"!: string
 6325
 6326			// Tag
 6327			"tag"?: string
 6328
 6329			// Config file path
 6330			"configFile"!: string
 6331
 6332			// Test run title
 6333			"testRunTitle"?: string
 6334
 6335			// Fail task if there are test failures
 6336			"failTaskOnFailedTests"?: bool
 6337		})
 6338		...
 6339	}, {
 6340		// [Deprecated] IIS Web App deployment
 6341		//
 6342		// Deploy using MSDeploy, then create/update websites and app
 6343		// pools
 6344		"task"!: null | bool | number | =~"^IISWebAppDeployment@1$" | [...] | {
 6345			...
 6346		}
 6347
 6348		// [Deprecated] IIS Web App deployment inputs
 6349		"inputs"!: null | bool | number | string | [...] | close({
 6350			// Machines
 6351			"EnvironmentName"!: string
 6352
 6353			// Admin Login
 6354			"AdminUserName"?: string
 6355
 6356			// Password
 6357			"AdminPassword"?: string
 6358
 6359			// Protocol
 6360			"WinRMProtocol"?: "Http" | "Https"
 6361
 6362			// Test Certificate
 6363			"TestCertificate"?: bool
 6364
 6365			// Web Deploy Package
 6366			"WebDeployPackage"!: string
 6367
 6368			// Web Deploy Parameter File
 6369			"WebDeployParamFile"?: string
 6370
 6371			// Override Parameters
 6372			"OverRideParams"?: string
 6373
 6374			// Create or Update Website
 6375			"CreateWebSite"?: bool
 6376
 6377			// Website Name
 6378			"WebSiteName"?: string
 6379
 6380			// Physical Path
 6381			"WebSitePhysicalPath"?: string
 6382
 6383			// Physical Path Authentication
 6384			"WebSitePhysicalPathAuth"?: "WebSiteUserPassThrough" | "WebSiteWindowsAuth"
 6385
 6386			// User Name
 6387			"WebSiteAuthUserName"?: string
 6388
 6389			// Password
 6390			"WebSiteAuthUserPassword"?: string
 6391
 6392			// Add Binding
 6393			"AddBinding"?: bool
 6394
 6395			// Assign Duplicate Binding
 6396			"AssignDuplicateBinding"?: bool
 6397
 6398			// Protocol
 6399			"Protocol"?: "https" | "http"
 6400
 6401			// IP Address
 6402			"IPAddress"?: string
 6403
 6404			// Port
 6405			"Port"?: string
 6406
 6407			// Server Name Indication Required
 6408			"ServerNameIndication"?: bool
 6409
 6410			// Host Name
 6411			"HostNameWithOutSNI"?: string
 6412
 6413			// Host Name
 6414			"HostNameWithHttp"?: string
 6415
 6416			// Host Name
 6417			"HostNameWithSNI"?: string
 6418
 6419			// SSL Certificate Thumb Print
 6420			"SSLCertThumbPrint"?: string
 6421
 6422			// Create or Update Application Pool
 6423			"CreateAppPool"?: bool
 6424
 6425			// Name
 6426			"AppPoolName"?: string
 6427
 6428			// .NET Version
 6429			"DotNetVersion"?: "v4.0" | "v2.0" | "No Managed Code"
 6430
 6431			// Managed Pipeline Mode
 6432			"PipeLineMode"?: "Integrated" | "Classic"
 6433
 6434			// Identity
 6435			"AppPoolIdentity"?: "ApplicationPoolIdentity" | "LocalService" | "LocalSystem" | "NetworkService" | "SpecificUser"
 6436
 6437			// Username
 6438			"AppPoolUsername"?: string
 6439
 6440			// Password
 6441			"AppPoolPassword"?: string
 6442
 6443			// Additional AppCmd.exe Commands
 6444			"AppCmdCommands"?: string
 6445
 6446			// Deploy in Parallel
 6447			"DeployInParallel"?: bool
 6448
 6449			// Select Machines By
 6450			"ResourceFilteringMethod"?: "machineNames" | "tags"
 6451
 6452			// Deploy to Machines
 6453			"MachineFilter"?: string
 6454		})
 6455		...
 6456	}, {
 6457		// Kubectl tool installer
 6458		//
 6459		// Install Kubectl on agent machine
 6460		"task"!: null | bool | number | =~"^KubectlInstaller@0$" | [...] | {
 6461			...
 6462		}
 6463
 6464		// Kubectl tool installer inputs
 6465		"inputs"?: null | bool | number | string | [...] | close({
 6466			// Kubectl Version Spec
 6467			"kubectlVersion"?: string
 6468		})
 6469		...
 6470	}, {
 6471		// Command line
 6472		//
 6473		// Run a command line script using Bash on Linux and macOS and
 6474		// cmd.exe on Windows
 6475		"task"!: null | bool | number | =~"^CmdLine@2$" | [...] | {
 6476			...
 6477		}
 6478
 6479		// Command line inputs
 6480		"inputs"?: null | bool | number | string | [...] | close({
 6481			// Script
 6482			"script"?: string
 6483
 6484			// Working Directory
 6485			"workingDirectory"?: string
 6486
 6487			// Fail on Standard Error
 6488			"failOnStderr"?: bool
 6489		})
 6490		...
 6491	}, {
 6492		// Command Line
 6493		//
 6494		// Run a command line with arguments
 6495		"task"!: null | bool | number | =~"^CmdLine@1$" | [...] | {
 6496			...
 6497		}
 6498
 6499		// Command Line inputs
 6500		"inputs"!: null | bool | number | string | [...] | close({
 6501			// Tool
 6502			"filename"!: string
 6503
 6504			// Arguments
 6505			"arguments"?: string
 6506
 6507			// Working folder
 6508			"workingFolder"?: string
 6509
 6510			// Fail on Standard Error
 6511			"failOnStandardError"?: bool
 6512		})
 6513		...
 6514	}, {
 6515		// NuGet command
 6516		//
 6517		// Deprecated: use the “NuGet” task instead. It works with the new
 6518		// Tool Installer framework so you can easily use new versions of
 6519		// NuGet without waiting for a task update, provides better
 6520		// support for authenticated feeds outside this
 6521		// organization/collection, and uses NuGet 4 by default.
 6522		"task"!: null | bool | number | =~"^NuGet@0$" | [...] | {
 6523			...
 6524		}
 6525
 6526		// NuGet command inputs
 6527		"inputs"!: null | bool | number | string | [...] | close({
 6528			// Command
 6529			"command"!: string
 6530
 6531			// Arguments
 6532			"arguments"?: string
 6533		})
 6534		...
 6535	}, {
 6536		// Container Build
 6537		//
 6538		// Container Build Task
 6539		"task"!: null | bool | number | =~"^ContainerBuild@0$" | [...] | {
 6540			...
 6541		}
 6542
 6543		// Container Build inputs
 6544		"inputs"?: null | bool | number | string | [...] | close({
 6545			// Docker registry service connection
 6546			"dockerRegistryServiceConnection"?: string
 6547
 6548			// Container repository
 6549			"repository"?: string
 6550
 6551			// Dockerfile
 6552			"Dockerfile"?: string
 6553
 6554			// Build context
 6555			"buildContext"?: string
 6556
 6557			// Tags
 6558			"tags"?: string
 6559		})
 6560		...
 6561	}, {
 6562		// NuGet Installer
 6563		//
 6564		// Installs or restores missing NuGet packages. Use
 6565		// NuGetAuthenticate@0 task for latest capabilities.
 6566		"task"!: null | bool | number | =~"^NuGetInstaller@0$" | [...] | {
 6567			...
 6568		}
 6569
 6570		// NuGet Installer inputs
 6571		"inputs"?: null | bool | number | string | [...] | close({
 6572			// Path to solution or packages.config
 6573			"solution"?: string
 6574
 6575			// Path to NuGet.config
 6576			"nugetConfigPath"?: string
 6577
 6578			// Installation type
 6579			"restoreMode"?: "restore" | "install"
 6580
 6581			// Disable local cache
 6582			"noCache"?: bool
 6583
 6584			// NuGet arguments
 6585			"nuGetRestoreArgs"?: string
 6586
 6587			// Verbosity
 6588			"verbosity"?: "-" | "Quiet" | "Normal" | "Detailed"
 6589
 6590			// NuGet Version
 6591			"nuGetVersion"?: "3.3.0" | "3.5.0.1829" | "4.0.0.2283" | "custom"
 6592
 6593			// Path to NuGet.exe
 6594			"nuGetPath"?: string
 6595		})
 6596		...
 6597	}, {
 6598		// NuGet Restore
 6599		//
 6600		// Restores NuGet packages in preparation for a Visual Studio
 6601		// Build step.
 6602		"task"!: null | bool | number | =~"^NuGetRestore@1$" | [...] | {
 6603			...
 6604		}
 6605
 6606		// NuGet Restore inputs
 6607		"inputs"?: null | bool | number | string | [...] | close({
 6608			// Path to solution, packages.config, or project.json
 6609			"solution"?: string
 6610
 6611			// Feeds to use
 6612			"selectOrConfig"?: "select" | "config"
 6613
 6614			// Use packages from this Azure Artifacts feed
 6615			"feed"?: string
 6616
 6617			// Use packages from NuGet.org
 6618			"includeNuGetOrg"?: bool
 6619
 6620			// Path to NuGet.config
 6621			"nugetConfigPath"?: string
 6622
 6623			// Disable local cache
 6624			"noCache"?: bool
 6625
 6626			// Destination directory
 6627			"packagesDirectory"?: string
 6628
 6629			// Verbosity
 6630			"verbosity"?: "-" | "Quiet" | "Normal" | "Detailed"
 6631		})
 6632		...
 6633	}, {
 6634		// NuGet
 6635		//
 6636		// Restore, pack, or push NuGet packages, or run a NuGet command.
 6637		// Supports NuGet.org and authenticated feeds like Azure
 6638		// Artifacts and MyGet. Uses NuGet.exe and works with .NET
 6639		// Framework apps. For .NET Core and .NET Standard apps, use the
 6640		// .NET Core task.
 6641		"task"!: null | bool | number | =~"^NuGetCommand@2$" | [...] | {
 6642			...
 6643		}
 6644
 6645		// NuGet inputs
 6646		"inputs"?: null | bool | number | string | [...] | close({
 6647			// Command
 6648			"command"?: "restore" | "pack" | "push" | "custom"
 6649
 6650			// Path to solution, packages.config, or project.json
 6651			"restoreSolution"?: string
 6652
 6653			// Feeds to use
 6654			"feedsToUse"?: "select" | "config"
 6655
 6656			// Use packages from this Azure Artifacts/TFS feed. Select from
 6657			// the dropdown or enter [project name/]feed name.
 6658			"vstsFeed"?: string
 6659
 6660			// Use packages from NuGet.org
 6661			"includeNuGetOrg"?: bool
 6662
 6663			// Path to NuGet.config
 6664			"nugetConfigPath"?: string
 6665
 6666			// Credentials for feeds outside this organization/collection
 6667			"externalFeedCredentials"?: string
 6668
 6669			// Disable local cache
 6670			"noCache"?: bool
 6671
 6672			// Disable parallel processing
 6673			"disableParallelProcessing"?: bool
 6674
 6675			// Destination directory
 6676			"restoreDirectory"?: string
 6677
 6678			// Verbosity
 6679			"verbosityRestore"?: "Quiet" | "Normal" | "Detailed"
 6680
 6681			// Path to NuGet package(s) to publish
 6682			"packagesToPush"?: string
 6683
 6684			// Target feed location
 6685			"nuGetFeedType"?: "internal" | "external"
 6686
 6687			// Target feed
 6688			"publishVstsFeed"?: string
 6689
 6690			// Publish pipeline metadata
 6691			"publishPackageMetadata"?: bool
 6692
 6693			// Allow duplicates to be skipped
 6694			"allowPackageConflicts"?: bool
 6695
 6696			// NuGet server
 6697			"publishFeedCredentials"?: string
 6698
 6699			// Verbosity
 6700			"verbosityPush"?: "Quiet" | "Normal" | "Detailed"
 6701
 6702			// Path to csproj or nuspec file(s) to pack
 6703			"packagesToPack"?: string
 6704
 6705			// Configuration to package
 6706			"configuration"?: string
 6707
 6708			// Package folder
 6709			"packDestination"?: string
 6710
 6711			// Automatic package versioning
 6712			"versioningScheme"?: "off" | "byPrereleaseNumber" | "byEnvVar" | "byBuildNumber"
 6713
 6714			// Include referenced projects
 6715			"includeReferencedProjects"?: bool
 6716
 6717			// Environment variable
 6718			"versionEnvVar"?: string
 6719
 6720			// Major
 6721			"majorVersion"?: string
 6722
 6723			// Minor
 6724			"minorVersion"?: string
 6725
 6726			// Patch
 6727			"patchVersion"?: string
 6728
 6729			// Time zone
 6730			"packTimezone"?: "utc" | "local"
 6731
 6732			// Create symbols package
 6733			"includeSymbols"?: bool
 6734
 6735			// Tool Package
 6736			"toolPackage"?: bool
 6737
 6738			// Additional build properties
 6739			"buildProperties"?: string
 6740
 6741			// Base path
 6742			"basePath"?: string
 6743
 6744			// Verbosity
 6745			"verbosityPack"?: "Quiet" | "Normal" | "Detailed"
 6746
 6747			// Command and arguments
 6748			"arguments"?: string
 6749		})
 6750		...
 6751	}, {
 6752		// Delay
 6753		//
 6754		// Delay further execution of a workflow by a fixed time
 6755		"task"!: null | bool | number | =~"^Delay@1$" | [...] | {
 6756			...
 6757		}
 6758
 6759		// Delay inputs
 6760		"inputs"?: null | bool | number | string | [...] | close({
 6761			// Delay Time (minutes)
 6762			"delayForMinutes"?: string
 6763		})
 6764		...
 6765	}, {
 6766		// Xamarin.iOS
 6767		//
 6768		// Build an iOS app with Xamarin on macOS
 6769		"task"!: null | bool | number | =~"^XamariniOS@1$" | [...] | {
 6770			...
 6771		}
 6772
 6773		// Xamarin.iOS inputs
 6774		"inputs"?: null | bool | number | string | [...] | close({
 6775			// Solution
 6776			"solutionFile"?: string
 6777
 6778			// Configuration
 6779			"configuration"?: string
 6780
 6781			// Clean
 6782			"clean"?: bool
 6783
 6784			// Create app package
 6785			"packageApp"?: bool
 6786
 6787			// Build for iOS Simulator
 6788			"buildForSimulator"?: bool
 6789
 6790			// Run NuGet restore
 6791			"runNugetRestore"?: bool
 6792
 6793			// Arguments
 6794			"args"?: string
 6795
 6796			// Working directory
 6797			"workingDirectory"?: string
 6798
 6799			// Build tool
 6800			"buildToolOption"?: "xbuild" | "msbuild"
 6801
 6802			// Build tool path
 6803			"mdtoolFile"?: string
 6804
 6805			// Override using
 6806			"signingOption"?: "file" | "id"
 6807
 6808			// Signing identity
 6809			"signingIdentity"?: string
 6810
 6811			// Unlock default keychain
 6812			"signingUnlockDefaultKeychain"?: bool
 6813
 6814			// Default keychain password
 6815			"signingDefaultKeychainPassword"?: string
 6816
 6817			// Provisioning profile UUID
 6818			"signingProvisioningProfileID"?: string
 6819
 6820			// P12 certificate file
 6821			"signingP12File"?: string
 6822
 6823			// P12 password
 6824			"signingP12Password"?: string
 6825
 6826			// Provisioning profile file
 6827			"signingProvisioningProfileFile"?: string
 6828
 6829			// Remove profile after build
 6830			"signingRemoveProfile"?: bool
 6831		})
 6832		...
 6833	}, {
 6834		// Xamarin.iOS
 6835		//
 6836		// Build an iOS app with Xamarin on macOS
 6837		"task"!: null | bool | number | =~"^XamariniOS@2$" | [...] | {
 6838			...
 6839		}
 6840
 6841		// Xamarin.iOS inputs
 6842		"inputs"?: null | bool | number | string | [...] | close({
 6843			// Solution
 6844			"solutionFile"?: string
 6845
 6846			// Configuration
 6847			"configuration"?: string
 6848
 6849			// Clean
 6850			"clean"?: bool
 6851
 6852			// Create app package
 6853			"packageApp"?: bool
 6854
 6855			// Build for iOS Simulator
 6856			"buildForSimulator"?: bool
 6857
 6858			// Run NuGet restore
 6859			"runNugetRestore"?: bool
 6860
 6861			// Arguments
 6862			"args"?: string
 6863
 6864			// Working directory
 6865			"workingDirectory"?: string
 6866
 6867			// Build tool path
 6868			"mdtoolFile"?: string
 6869
 6870			// Signing identity
 6871			"signingIdentity"?: string
 6872
 6873			// Provisioning profile UUID
 6874			"signingProvisioningProfileID"?: string
 6875		})
 6876		...
 6877	}, {
 6878		// Publish test results
 6879		//
 6880		// Publish test results to Azure Pipelines
 6881		"task"!: null | bool | number | =~"^PublishTestResults@1$" | [...] | {
 6882			...
 6883		}
 6884
 6885		// Publish test results inputs
 6886		"inputs"?: null | bool | number | string | [...] | close({
 6887			// Test Result Format
 6888			"testRunner"?: "JUnit" | "NUnit" | "VSTest" | "XUnit"
 6889
 6890			// Test Results Files
 6891			"testResultsFiles"?: string
 6892
 6893			// Merge Test Results
 6894			"mergeTestResults"?: bool
 6895
 6896			// Test Run Title
 6897			"testRunTitle"?: string
 6898
 6899			// Platform
 6900			"platform"?: string
 6901
 6902			// Configuration
 6903			"configuration"?: string
 6904
 6905			// Upload Test Attachments
 6906			"publishRunAttachments"?: bool
 6907		})
 6908		...
 6909	}, {
 6910		// Publish Test Results
 6911		//
 6912		// Publish test results to Azure Pipelines
 6913		"task"!: null | bool | number | =~"^PublishTestResults@2$" | [...] | {
 6914			...
 6915		}
 6916
 6917		// Publish Test Results inputs
 6918		"inputs"?: null | bool | number | string | [...] | close({
 6919			// Test result format
 6920			"testResultsFormat"?: "JUnit" | "NUnit" | "VSTest" | "XUnit" | "CTest"
 6921
 6922			// Test results files
 6923			"testResultsFiles"?: string
 6924
 6925			// Search folder
 6926			"searchFolder"?: string
 6927
 6928			// Merge test results
 6929			"mergeTestResults"?: bool
 6930
 6931			// Fail if there are test failures
 6932			"failTaskOnFailedTests"?: bool
 6933
 6934			// Fail if there is failure in publishing test results
 6935			"failTaskOnFailureToPublishResults"?: bool
 6936
 6937			// Fail if no result files are found
 6938			"failTaskOnMissingResultsFile"?: bool
 6939
 6940			// Test run title
 6941			"testRunTitle"?: string
 6942
 6943			// Build Platform
 6944			"buildPlatform"?: string
 6945
 6946			// Build Configuration
 6947			"buildConfiguration"?: string
 6948
 6949			// Upload test results files
 6950			"publishRunAttachments"?: bool
 6951		})
 6952		...
 6953	}, {
 6954		// Publish test results
 6955		//
 6956		// Publish test results to Azure Pipelines
 6957		"task"!: null | bool | number | =~"^PublishTestResults@1$" | [...] | {
 6958			...
 6959		}
 6960
 6961		// Publish test results inputs
 6962		"inputs"?: null | bool | number | string | [...] | close({
 6963			// Test Result Format
 6964			"testRunner"?: "JUnit" | "NUnit" | "VSTest" | "XUnit"
 6965
 6966			// Test Results Files
 6967			"testResultsFiles"?: string
 6968
 6969			// Merge Test Results
 6970			"mergeTestResults"?: bool
 6971
 6972			// Test Run Title
 6973			"testRunTitle"?: string
 6974
 6975			// Platform
 6976			"platform"?: string
 6977
 6978			// Configuration
 6979			"configuration"?: string
 6980
 6981			// Upload Test Attachments
 6982			"publishRunAttachments"?: bool
 6983		})
 6984		...
 6985	}, {
 6986		// Azure file copy
 6987		//
 6988		// Copy files to Azure Blob Storage or virtual machines
 6989		"task"!: null | bool | number | =~"^AzureFileCopy@6$" | [...] | {
 6990			...
 6991		}
 6992
 6993		// Azure file copy inputs
 6994		"inputs"!: null | bool | number | string | [...] | close({
 6995			// Source
 6996			"SourcePath"!: string
 6997
 6998			// Azure Subscription
 6999			"azureSubscription"!: string
 7000
 7001			// Destination Type
 7002			"Destination"!: "AzureBlob" | "AzureVMs"
 7003
 7004			// RM Storage Account
 7005			"storage"!: string
 7006
 7007			// Container Name
 7008			"ContainerName"?: string
 7009
 7010			// Blob Prefix
 7011			"BlobPrefix"?: string
 7012
 7013			// Resource Group
 7014			"resourceGroup"?: string
 7015
 7016			// Select Machines By
 7017			"ResourceFilteringMethod"?: "machineNames" | "tags"
 7018
 7019			// Filter Criteria
 7020			"MachineNames"?: string
 7021
 7022			// Admin Login
 7023			"vmsAdminUserName"?: string
 7024
 7025			// Password
 7026			"vmsAdminPassword"?: string
 7027
 7028			// Destination Folder
 7029			"TargetPath"?: string
 7030
 7031			// Optional Arguments (for uploading files to blob)
 7032			"AdditionalArgumentsForBlobCopy"?: string
 7033
 7034			// Optional Arguments (for downloading files to VM)
 7035			"AdditionalArgumentsForVMCopy"?: string
 7036
 7037			// Enable Copy Prerequisites
 7038			"enableCopyPrerequisites"?: bool
 7039
 7040			// Copy in Parallel
 7041			"CopyFilesInParallel"?: bool
 7042
 7043			// Clean Target
 7044			"CleanTargetBeforeCopy"?: bool
 7045
 7046			// Test Certificate
 7047			"skipCACheck"?: bool
 7048		})
 7049		...
 7050	}, {
 7051		// Azure file copy
 7052		//
 7053		// Copy files to Azure Blob Storage or virtual machines
 7054		"task"!: null | bool | number | =~"^AzureFileCopy@4$" | [...] | {
 7055			...
 7056		}
 7057
 7058		// Azure file copy inputs
 7059		"inputs"!: null | bool | number | string | [...] | close({
 7060			// Source
 7061			"SourcePath"!: string
 7062
 7063			// Azure Subscription
 7064			"azureSubscription"!: string
 7065
 7066			// Destination Type
 7067			"Destination"!: "AzureBlob" | "AzureVMs"
 7068
 7069			// RM Storage Account
 7070			"storage"!: string
 7071
 7072			// Container Name
 7073			"ContainerName"?: string
 7074
 7075			// Blob Prefix
 7076			"BlobPrefix"?: string
 7077
 7078			// Resource Group
 7079			"resourceGroup"?: string
 7080
 7081			// Select Machines By
 7082			"ResourceFilteringMethod"?: "machineNames" | "tags"
 7083
 7084			// Filter Criteria
 7085			"MachineNames"?: string
 7086
 7087			// Admin Login
 7088			"vmsAdminUserName"?: string
 7089
 7090			// Password
 7091			"vmsAdminPassword"?: string
 7092
 7093			// Destination Folder
 7094			"TargetPath"?: string
 7095
 7096			// Optional Arguments (for uploading files to blob)
 7097			"AdditionalArgumentsForBlobCopy"?: string
 7098
 7099			// Optional Arguments (for downloading files to VM)
 7100			"AdditionalArgumentsForVMCopy"?: string
 7101
 7102			// SAS Token Expiration Period In Minutes
 7103			"sasTokenTimeOutInMinutes"?: string
 7104
 7105			// Enable Copy Prerequisites
 7106			"enableCopyPrerequisites"?: bool
 7107
 7108			// Copy in Parallel
 7109			"CopyFilesInParallel"?: bool
 7110
 7111			// Clean Target
 7112			"CleanTargetBeforeCopy"?: bool
 7113
 7114			// Test Certificate
 7115			"skipCACheck"?: bool
 7116		})
 7117		...
 7118	}, {
 7119		// Azure file copy
 7120		//
 7121		// Copy files to Azure Blob Storage or virtual machines
 7122		"task"!: null | bool | number | =~"^AzureFileCopy@5$" | [...] | {
 7123			...
 7124		}
 7125
 7126		// Azure file copy inputs
 7127		"inputs"!: null | bool | number | string | [...] | close({
 7128			// Source
 7129			"SourcePath"!: string
 7130
 7131			// Azure Subscription
 7132			"azureSubscription"!: string
 7133
 7134			// Destination Type
 7135			"Destination"!: "AzureBlob" | "AzureVMs"
 7136
 7137			// RM Storage Account
 7138			"storage"!: string
 7139
 7140			// Container Name
 7141			"ContainerName"?: string
 7142
 7143			// Blob Prefix
 7144			"BlobPrefix"?: string
 7145
 7146			// Resource Group
 7147			"resourceGroup"?: string
 7148
 7149			// Select Machines By
 7150			"ResourceFilteringMethod"?: "machineNames" | "tags"
 7151
 7152			// Filter Criteria
 7153			"MachineNames"?: string
 7154
 7155			// Admin Login
 7156			"vmsAdminUserName"?: string
 7157
 7158			// Password
 7159			"vmsAdminPassword"?: string
 7160
 7161			// Destination Folder
 7162			"TargetPath"?: string
 7163
 7164			// Optional Arguments (for uploading files to blob)
 7165			"AdditionalArgumentsForBlobCopy"?: string
 7166
 7167			// Optional Arguments (for downloading files to VM)
 7168			"AdditionalArgumentsForVMCopy"?: string
 7169
 7170			// SAS Token Expiration Period In Minutes
 7171			"sasTokenTimeOutInMinutes"?: string
 7172
 7173			// Enable Copy Prerequisites
 7174			"enableCopyPrerequisites"?: bool
 7175
 7176			// Copy in Parallel
 7177			"CopyFilesInParallel"?: bool
 7178
 7179			// Clean Target
 7180			"CleanTargetBeforeCopy"?: bool
 7181
 7182			// Test Certificate
 7183			"skipCACheck"?: bool
 7184		})
 7185		...
 7186	}, {
 7187		// Azure file copy
 7188		//
 7189		// Copy files to Azure Blob Storage or virtual machines
 7190		"task"!: null | bool | number | =~"^AzureFileCopy@2$" | [...] | {
 7191			...
 7192		}
 7193
 7194		// Azure file copy inputs
 7195		"inputs"!: null | bool | number | string | [...] | close({
 7196			// Source
 7197			"SourcePath"!: string
 7198
 7199			// Azure Connection Type
 7200			"azureConnectionType"?: "ConnectedServiceName" | "ConnectedServiceNameARM"
 7201
 7202			// Azure Classic Subscription
 7203			"azureClassicSubscription"?: string
 7204
 7205			// Azure Subscription
 7206			"azureSubscription"?: string
 7207
 7208			// Destination Type
 7209			"Destination"!: "AzureBlob" | "AzureVMs"
 7210
 7211			// Classic Storage Account
 7212			"classicStorage"?: string
 7213
 7214			// RM Storage Account
 7215			"storage"?: string
 7216
 7217			// Container Name
 7218			"ContainerName"?: string
 7219
 7220			// Blob Prefix
 7221			"BlobPrefix"?: string
 7222
 7223			// Cloud Service
 7224			"cloudService"?: string
 7225
 7226			// Resource Group
 7227			"resourceGroup"?: string
 7228
 7229			// Select Machines By
 7230			"ResourceFilteringMethod"?: "machineNames" | "tags"
 7231
 7232			// Filter Criteria
 7233			"MachineNames"?: string
 7234
 7235			// Admin Login
 7236			"vmsAdminUserName"?: string
 7237
 7238			// Password
 7239			"vmsAdminPassword"?: string
 7240
 7241			// Destination Folder
 7242			"TargetPath"?: string
 7243
 7244			// Optional Arguments (for uploading files to blob)
 7245			"AdditionalArgumentsForBlobCopy"?: string
 7246
 7247			// Optional Arguments (for downloading files to VM)
 7248			"AdditionalArgumentsForVMCopy"?: string
 7249
 7250			// Enable Copy Prerequisites
 7251			"enableCopyPrerequisites"?: bool
 7252
 7253			// Copy in Parallel
 7254			"CopyFilesInParallel"?: bool
 7255
 7256			// Clean Target
 7257			"CleanTargetBeforeCopy"?: bool
 7258
 7259			// Test Certificate
 7260			"skipCACheck"?: bool
 7261
 7262			// Storage Container URI
 7263			"outputStorageUri"?: string
 7264
 7265			// Storage Container SAS Token
 7266			"outputStorageContainerSasToken"?: string
 7267		})
 7268		...
 7269	}, {
 7270		// Azure file copy
 7271		//
 7272		// Copy files to Azure Blob Storage or virtual machines
 7273		"task"!: null | bool | number | =~"^AzureFileCopy@3$" | [...] | {
 7274			...
 7275		}
 7276
 7277		// Azure file copy inputs
 7278		"inputs"!: null | bool | number | string | [...] | close({
 7279			// Source
 7280			"SourcePath"!: string
 7281
 7282			// Azure Subscription
 7283			"azureSubscription"!: string
 7284
 7285			// Destination Type
 7286			"Destination"!: "AzureBlob" | "AzureVMs"
 7287
 7288			// RM Storage Account
 7289			"storage"!: string
 7290
 7291			// Container Name
 7292			"ContainerName"?: string
 7293
 7294			// Blob Prefix
 7295			"BlobPrefix"?: string
 7296
 7297			// Resource Group
 7298			"resourceGroup"?: string
 7299
 7300			// Select Machines By
 7301			"ResourceFilteringMethod"?: "machineNames" | "tags"
 7302
 7303			// Filter Criteria
 7304			"MachineNames"?: string
 7305
 7306			// Admin Login
 7307			"vmsAdminUserName"?: string
 7308
 7309			// Password
 7310			"vmsAdminPassword"?: string
 7311
 7312			// Destination Folder
 7313			"TargetPath"?: string
 7314
 7315			// Optional Arguments (for uploading files to blob)
 7316			"AdditionalArgumentsForBlobCopy"?: string
 7317
 7318			// Optional Arguments (for downloading files to VM)
 7319			"AdditionalArgumentsForVMCopy"?: string
 7320
 7321			// Enable Copy Prerequisites
 7322			"enableCopyPrerequisites"?: bool
 7323
 7324			// Copy in Parallel
 7325			"CopyFilesInParallel"?: bool
 7326
 7327			// Clean Target
 7328			"CleanTargetBeforeCopy"?: bool
 7329
 7330			// Test Certificate
 7331			"skipCACheck"?: bool
 7332
 7333			// Storage Container URI
 7334			"outputStorageUri"?: string
 7335
 7336			// Storage Container SAS Token
 7337			"outputStorageContainerSasToken"?: string
 7338
 7339			// SAS Token Expiration Period In Minutes
 7340			"sasTokenTimeOutInMinutes"?: string
 7341		})
 7342		...
 7343	}, {
 7344		// Azure file copy
 7345		//
 7346		// Copy files to Azure Blob Storage or virtual machines
 7347		"task"!: null | bool | number | =~"^AzureFileCopy@1$" | [...] | {
 7348			...
 7349		}
 7350
 7351		// Azure file copy inputs
 7352		"inputs"!: null | bool | number | string | [...] | close({
 7353			// Source
 7354			"SourcePath"!: string
 7355
 7356			// Azure Connection Type
 7357			"azureConnectionType"?: "ConnectedServiceName" | "ConnectedServiceNameARM"
 7358
 7359			// Azure Classic Subscription
 7360			"azureClassicSubscription"?: string
 7361
 7362			// Azure Subscription
 7363			"azureSubscription"?: string
 7364
 7365			// Destination Type
 7366			"Destination"!: "AzureBlob" | "AzureVMs"
 7367
 7368			// Classic Storage Account
 7369			"classicStorage"?: string
 7370
 7371			// RM Storage Account
 7372			"storage"?: string
 7373
 7374			// Container Name
 7375			"ContainerName"?: string
 7376
 7377			// Blob Prefix
 7378			"BlobPrefix"?: string
 7379
 7380			// Cloud Service
 7381			"cloudService"?: string
 7382
 7383			// Resource Group
 7384			"resourceGroup"?: string
 7385
 7386			// Select Machines By
 7387			"ResourceFilteringMethod"?: "machineNames" | "tags"
 7388
 7389			// Filter Criteria
 7390			"MachineNames"?: string
 7391
 7392			// Admin Login
 7393			"vmsAdminUserName"?: string
 7394
 7395			// Password
 7396			"vmsAdminPassword"?: string
 7397
 7398			// Destination Folder
 7399			"TargetPath"?: string
 7400
 7401			// Additional Arguments
 7402			"AdditionalArguments"?: string
 7403
 7404			// Enable Copy Prerequisites
 7405			"enableCopyPrerequisites"?: bool
 7406
 7407			// Copy in Parallel
 7408			"CopyFilesInParallel"?: bool
 7409
 7410			// Clean Target
 7411			"CleanTargetBeforeCopy"?: bool
 7412
 7413			// Test Certificate
 7414			"skipCACheck"?: bool
 7415
 7416			// Storage Container URI
 7417			"outputStorageUri"?: string
 7418
 7419			// Storage Container SAS Token
 7420			"outputStorageContainerSasToken"?: string
 7421		})
 7422		...
 7423	}, {
 7424		// Index sources and publish symbols
 7425		//
 7426		// Index your source code and publish symbols to a file share or
 7427		// Azure Artifacts symbol server
 7428		"task"!: null | bool | number | =~"^PublishSymbols@2$" | [...] | {
 7429			...
 7430		}
 7431
 7432		// Index sources and publish symbols inputs
 7433		"inputs"?: null | bool | number | string | [...] | close({
 7434			// Azure Resource Manager connection
 7435			"ConnectedServiceName"?: string
 7436
 7437			// Path to symbols folder
 7438			"SymbolsFolder"?: string
 7439
 7440			// Search pattern
 7441			"SearchPattern"?: string
 7442
 7443			// Manifest
 7444			"Manifest"?: string
 7445
 7446			// Index sources
 7447			"IndexSources"?: bool
 7448
 7449			// Publish symbols
 7450			"PublishSymbols"?: bool
 7451
 7452			// Symbol server type
 7453			"SymbolServerType"?: " " | "TeamServices" | "FileShare"
 7454
 7455			// Path to publish symbols
 7456			"SymbolsPath"?: string
 7457
 7458			// Compress symbols
 7459			"CompressSymbols"?: bool
 7460
 7461			// Symbol Expiration (in days)
 7462			"SymbolExpirationInDays"?: string
 7463
 7464			// Symbol file formats to publish
 7465			"IndexableFileFormats"?: "Default" | "Pdb" | "SourceMap" | "All"
 7466
 7467			// Verbose logging
 7468			"DetailedLog"?: bool
 7469
 7470			// Warn if not indexed
 7471			"TreatNotIndexedAsWarning"?: bool
 7472
 7473			// Use NetCore client tool
 7474			"UseNetCoreClientTool"?: bool
 7475
 7476			// Max wait time (min)
 7477			"SymbolsMaximumWaitTime"?: string
 7478
 7479			// Product
 7480			"SymbolsProduct"?: string
 7481
 7482			// Version
 7483			"SymbolsVersion"?: string
 7484
 7485			// Artifact name
 7486			"SymbolsArtifactName"?: string
 7487		})
 7488		...
 7489	}, {
 7490		// Index Sources & Publish Symbols
 7491		//
 7492		// Index your source code and publish symbols to a file share
 7493		"task"!: null | bool | number | =~"^PublishSymbols@1$" | [...] | {
 7494			...
 7495		}
 7496
 7497		// Index Sources & Publish Symbols inputs
 7498		"inputs"?: null | bool | number | string | [...] | close({
 7499			// Path to publish symbols
 7500			"SymbolsPath"?: string
 7501
 7502			// Search pattern
 7503			"SearchPattern"?: string
 7504
 7505			// Path to symbols folder
 7506			"SymbolsFolder"?: string
 7507
 7508			// Skip indexing
 7509			"SkipIndexing"?: bool
 7510
 7511			// Warn if not indexed
 7512			"TreatNotIndexedAsWarning"?: bool
 7513
 7514			// Max wait time (min)
 7515			"SymbolsMaximumWaitTime"?: string
 7516
 7517			// Product
 7518			"SymbolsProduct"?: string
 7519
 7520			// Version
 7521			"SymbolsVersion"?: string
 7522
 7523			// Artifact name
 7524			"SymbolsArtifactName"?: string
 7525		})
 7526		...
 7527	}, {
 7528		// Copy files over SSH
 7529		//
 7530		// Copy files or build artifacts to a remote machine over SSH
 7531		"task"!: null | bool | number | =~"^CopyFilesOverSSH@0$" | [...] | {
 7532			...
 7533		}
 7534
 7535		// Copy files over SSH inputs
 7536		"inputs"!: null | bool | number | string | [...] | close({
 7537			// SSH service connection
 7538			"sshEndpoint"!: string
 7539
 7540			// Source folder
 7541			"sourceFolder"?: string
 7542
 7543			// Contents
 7544			"contents"?: string
 7545
 7546			// Target folder
 7547			"targetFolder"?: string
 7548
 7549			// Target machine running Windows
 7550			"isWindowsOnTarget"?: bool
 7551
 7552			// Clean target folder
 7553			"cleanTargetFolder"?: bool
 7554
 7555			// Remove hidden files in target folder
 7556			"cleanHiddenFilesInTarget"?: bool
 7557
 7558			// SSH handshake timeout
 7559			"readyTimeout"?: string
 7560
 7561			// Overwrite
 7562			"overwrite"?: bool
 7563
 7564			// Fail if no files found to copy
 7565			"failOnEmptySource"?: bool
 7566
 7567			// Flatten folders
 7568			"flattenFolders"?: bool
 7569
 7570			// Number of concurrent uploads when copying files
 7571			"concurrentUploads"?: string
 7572
 7573			// Delay between queueing uploads (in milliseconds)
 7574			"delayBetweenUploads"?: string
 7575		})
 7576		...
 7577	}, {
 7578		// Gradle
 7579		//
 7580		// Build using a Gradle wrapper script
 7581		"task"!: null | bool | number | =~"^Gradle@2$" | [...] | {
 7582			...
 7583		}
 7584
 7585		// Gradle inputs
 7586		"inputs"?: null | bool | number | string | [...] | close({
 7587			// Gradle wrapper
 7588			"gradleWrapperFile"?: string
 7589
 7590			// Working directory
 7591			"workingDirectory"?: string
 7592
 7593			// Options
 7594			"options"?: string
 7595
 7596			// Tasks
 7597			"tasks"?: string
 7598
 7599			// Publish to Azure Pipelines
 7600			"publishJUnitResults"?: bool
 7601
 7602			// Test results files
 7603			"testResultsFiles"?: string
 7604
 7605			// Test run title
 7606			"testRunTitle"?: string
 7607
 7608			// Code coverage tool
 7609			"codeCoverageToolOption"?: "None" | "Cobertura" | "JaCoCo"
 7610
 7611			// Class files directories
 7612			"codeCoverageClassFilesDirectories"?: string
 7613
 7614			// Class inclusion/exclusion filters
 7615			"codeCoverageClassFilter"?: string
 7616
 7617			// Fail when code coverage results are missing
 7618			"codeCoverageFailIfEmpty"?: bool
 7619
 7620			// Gradle version >= 5.x
 7621			"codeCoverageGradle5xOrHigher"?: bool
 7622
 7623			// Set JAVA_HOME by
 7624			"javaHomeOption"?: "JDKVersion" | "Path"
 7625
 7626			// JDK version
 7627			"jdkVersionOption"?: "default" | "1.17" | "1.11" | "1.10" | "1.9" | "1.8" | "1.7" | "1.6"
 7628
 7629			// JDK path
 7630			"jdkDirectory"?: string
 7631
 7632			// JDK architecture
 7633			"jdkArchitectureOption"?: "x86" | "x64"
 7634
 7635			// Set GRADLE_OPTS
 7636			"gradleOptions"?: string
 7637
 7638			// Run SonarQube or SonarCloud Analysis
 7639			"sonarQubeRunAnalysis"?: bool
 7640
 7641			// SonarQube scanner for Gradle version
 7642			"sqGradlePluginVersionChoice"?: "specify" | "build"
 7643
 7644			// SonarQube scanner for Gradle plugin version
 7645			"sonarQubeGradlePluginVersion"?: string
 7646
 7647			// Run Checkstyle
 7648			"checkStyleRunAnalysis"?: bool
 7649
 7650			// Run FindBugs
 7651			"findBugsRunAnalysis"?: bool
 7652
 7653			// Run PMD
 7654			"pmdRunAnalysis"?: bool
 7655
 7656			// Run SpotBugs
 7657			"spotBugsAnalysis"?: bool
 7658
 7659			// Spotbugs plugin version
 7660			"spotBugsGradlePluginVersionChoice"?: "specify" | "build"
 7661
 7662			// Version number
 7663			"spotbugsGradlePluginVersion"?: string
 7664		})
 7665		...
 7666	}, {
 7667		// Gradle
 7668		//
 7669		// Build using a Gradle wrapper script
 7670		"task"!: null | bool | number | =~"^Gradle@3$" | [...] | {
 7671			...
 7672		}
 7673
 7674		// Gradle inputs
 7675		"inputs"?: null | bool | number | string | [...] | close({
 7676			// Gradle wrapper
 7677			"gradleWrapperFile"?: string
 7678
 7679			// Working directory
 7680			"workingDirectory"?: string
 7681
 7682			// Options
 7683			"options"?: string
 7684
 7685			// Tasks
 7686			"tasks"?: string
 7687
 7688			// Publish to Azure Pipelines
 7689			"publishJUnitResults"?: bool
 7690
 7691			// Test results files
 7692			"testResultsFiles"?: string
 7693
 7694			// Test run title
 7695			"testRunTitle"?: string
 7696
 7697			// Code coverage tool
 7698			"codeCoverageToolOption"?: "None" | "Cobertura" | "JaCoCo"
 7699
 7700			// Class files directories
 7701			"codeCoverageClassFilesDirectories"?: string
 7702
 7703			// Class inclusion/exclusion filters
 7704			"codeCoverageClassFilter"?: string
 7705
 7706			// Fail when code coverage results are missing
 7707			"codeCoverageFailIfEmpty"?: bool
 7708
 7709			// Gradle version >= 5.x
 7710			"codeCoverageGradle5xOrHigher"?: bool
 7711
 7712			// Set JAVA_HOME by
 7713			"javaHomeOption"?: "JDKVersion" | "Path"
 7714
 7715			// JDK version
 7716			"jdkVersionOption"?: "default" | "1.17" | "1.11" | "1.10" | "1.9" | "1.8" | "1.7" | "1.6"
 7717
 7718			// JDK path
 7719			"jdkDirectory"?: string
 7720
 7721			// JDK architecture
 7722			"jdkArchitectureOption"?: "x86" | "x64"
 7723
 7724			// Set GRADLE_OPTS
 7725			"gradleOptions"?: string
 7726
 7727			// Run SonarQube or SonarCloud Analysis
 7728			"sonarQubeRunAnalysis"?: bool
 7729
 7730			// SonarQube scanner for Gradle version
 7731			"sqGradlePluginVersionChoice"?: "specify" | "build"
 7732
 7733			// SonarQube scanner for Gradle plugin version
 7734			"sonarQubeGradlePluginVersion"?: string
 7735
 7736			// Run Checkstyle
 7737			"checkStyleRunAnalysis"?: bool
 7738
 7739			// Run FindBugs
 7740			"findBugsRunAnalysis"?: bool
 7741
 7742			// Run PMD
 7743			"pmdRunAnalysis"?: bool
 7744
 7745			// Run SpotBugs
 7746			"spotBugsAnalysis"?: bool
 7747
 7748			// Spotbugs plugin version
 7749			"spotBugsGradlePluginVersionChoice"?: "specify" | "build"
 7750
 7751			// Version number
 7752			"spotbugsGradlePluginVersion"?: string
 7753		})
 7754		...
 7755	}, {
 7756		// Gradle
 7757		//
 7758		// Build using a Gradle wrapper script
 7759		"task"!: null | bool | number | =~"^Gradle@4$" | [...] | {
 7760			...
 7761		}
 7762
 7763		// Gradle inputs
 7764		"inputs"?: null | bool | number | string | [...] | close({
 7765			// Gradle wrapper
 7766			"gradleWrapperFile"?: string
 7767
 7768			// Working directory
 7769			"workingDirectory"?: string
 7770
 7771			// Options
 7772			"options"?: string
 7773
 7774			// Tasks
 7775			"tasks"?: string
 7776
 7777			// Publish to Azure Pipelines
 7778			"publishJUnitResults"?: bool
 7779
 7780			// Test results files
 7781			"testResultsFiles"?: string
 7782
 7783			// Test run title
 7784			"testRunTitle"?: string
 7785
 7786			// Set JAVA_HOME by
 7787			"javaHomeOption"?: "JDKVersion" | "Path"
 7788
 7789			// JDK version
 7790			"jdkVersionOption"?: "default" | "1.17" | "1.11" | "1.10" | "1.9" | "1.8" | "1.7" | "1.6"
 7791
 7792			// JDK path
 7793			"jdkDirectory"?: string
 7794
 7795			// JDK architecture
 7796			"jdkArchitectureOption"?: "x86" | "x64"
 7797
 7798			// Set GRADLE_OPTS
 7799			"gradleOptions"?: string
 7800
 7801			// Run SonarQube or SonarCloud Analysis
 7802			"sonarQubeRunAnalysis"?: bool
 7803
 7804			// SonarQube scanner for Gradle version
 7805			"sqGradlePluginVersionChoice"?: "specify" | "build"
 7806
 7807			// SonarQube scanner for Gradle plugin version
 7808			"sonarQubeGradlePluginVersion"?: string
 7809
 7810			// Run Checkstyle
 7811			"checkStyleRunAnalysis"?: bool
 7812
 7813			// Run FindBugs
 7814			"findBugsRunAnalysis"?: bool
 7815
 7816			// Run PMD
 7817			"pmdRunAnalysis"?: bool
 7818
 7819			// Run SpotBugs
 7820			"spotBugsAnalysis"?: bool
 7821
 7822			// Spotbugs plugin version
 7823			"spotBugsGradlePluginVersionChoice"?: "specify" | "build"
 7824
 7825			// Version number
 7826			"spotbugsGradlePluginVersion"?: string
 7827		})
 7828		...
 7829	}, {
 7830		// Gradle
 7831		//
 7832		// Build using a Gradle wrapper script
 7833		"task"!: null | bool | number | =~"^Gradle@1$" | [...] | {
 7834			...
 7835		}
 7836
 7837		// Gradle inputs
 7838		"inputs"?: null | bool | number | string | [...] | close({
 7839			// Gradle Wrapper
 7840			"gradleWrapperFile"?: string
 7841
 7842			// Options
 7843			"options"?: string
 7844
 7845			// Tasks
 7846			"tasks"?: string
 7847
 7848			// Working Directory
 7849			"workingDirectory"?: string
 7850
 7851			// Publish to TFS/Team Services
 7852			"publishJUnitResults"?: bool
 7853
 7854			// Test Results Files
 7855			"testResultsFiles"?: string
 7856
 7857			// Test Run Title
 7858			"testRunTitle"?: string
 7859
 7860			// Code Coverage Tool
 7861			"codeCoverageToolOption"?: "None" | "Cobertura" | "JaCoCo"
 7862
 7863			// Class Files Directories
 7864			"codeCoverageClassFilesDirectories"?: string
 7865
 7866			// Class Inclusion/Exclusion Filters
 7867			"codeCoverageClassFilter"?: string
 7868
 7869			// Fail When Code Coverage Results Are Missing
 7870			"codeCoverageFailIfEmpty"?: bool
 7871
 7872			// Set JAVA_HOME by
 7873			"javaHomeOption"?: "JDKVersion" | "Path"
 7874
 7875			// JDK Version
 7876			"jdkVersionOption"?: "default" | "1.9" | "1.8" | "1.7" | "1.6"
 7877
 7878			// JDK Path
 7879			"jdkDirectory"?: string
 7880
 7881			// JDK Architecture
 7882			"jdkArchitectureOption"?: "x86" | "x64"
 7883
 7884			// Set GRADLE_OPTS
 7885			"gradleOptions"?: string
 7886
 7887			// Run SonarQube Analysis
 7888			"sonarQubeRunAnalysis"?: bool
 7889
 7890			// SonarQube Endpoint
 7891			"sonarQubeServiceEndpoint"?: string
 7892
 7893			// SonarQube Project Name
 7894			"sonarQubeProjectName"?: string
 7895
 7896			// SonarQube Project Key
 7897			"sonarQubeProjectKey"?: string
 7898
 7899			// SonarQube Project Version
 7900			"sonarQubeProjectVersion"?: string
 7901
 7902			// SonarQube Gradle Plugin Version
 7903			"sonarQubeGradlePluginVersion"?: string
 7904
 7905			// The SonarQube server version is lower than 5.2
 7906			"sonarQubeSpecifyDB"?: bool
 7907
 7908			// Db Connection String
 7909			"sonarQubeDBUrl"?: string
 7910
 7911			// Db Username
 7912			"sonarQubeDBUsername"?: string
 7913
 7914			// Db User Password
 7915			"sonarQubeDBPassword"?: string
 7916
 7917			// Include full analysis report in the build summary (SQ 5.3+)
 7918			"sonarQubeIncludeFullReport"?: bool
 7919
 7920			// Fail the build on quality gate failure (SQ 5.3+)
 7921			"sonarQubeFailWhenQualityGateFails"?: bool
 7922
 7923			// Run Checkstyle
 7924			"checkStyleRunAnalysis"?: bool
 7925
 7926			// Run FindBugs
 7927			"findBugsRunAnalysis"?: bool
 7928
 7929			// Run PMD
 7930			"pmdRunAnalysis"?: bool
 7931		})
 7932		...
 7933	}, {
 7934		// Azure Test Plan
 7935		//
 7936		// Run manual and automated tests points of test plan for
 7937		// different testing frameworks like Maven and Gradle for Java,
 7938		// PyTest for Python and Jest for JavaScript
 7939		"task"!: null | bool | number | =~"^AzureTestPlan@0$" | [...] | {
 7940			...
 7941		}
 7942
 7943		// Azure Test Plan inputs
 7944		"inputs"!: null | bool | number | string | [...] | close({
 7945			// Azure Resource Manager connection
 7946			"azureSubscription"?: string
 7947
 7948			// Test cases to be executed
 7949			"testSelector"!: "manualTests" | "automatedTests"
 7950
 7951			// Select tests using
 7952			"testPlanOrRunSelector"?: "testPlan" | "testRun"
 7953
 7954			// Test Run
 7955			"testRunId"?: string
 7956
 7957			// Test plan
 7958			"testPlan"?: string
 7959
 7960			// Test suite
 7961			"testSuite"?: string
 7962
 7963			// Test configuration
 7964			"testConfiguration"!: string
 7965
 7966			// Select Test framework language
 7967			"testLanguageInput"?: "JavaMaven" | "JavaGradle" | "Python" | "JavaScriptJest" | "Playwright"
 7968
 7969			// Pom file path
 7970			"pomFilePath"?: string
 7971
 7972			// Gradle file path
 7973			"gradleFilePath"?: string
 7974
 7975			// Upload test results files
 7976			"publishRunAttachments"?: bool
 7977
 7978			// Fail if there are test failures
 7979			"failTaskOnFailedTests"?: bool
 7980
 7981			// Fail if there is failure in publishing test results
 7982			"failTaskOnFailureToPublishResults"?: bool
 7983
 7984			// Fail if no result files are found
 7985			"failTaskOnMissingResultsFile"?: bool
 7986		})
 7987		...
 7988	}, {
 7989		// App Center distribute
 7990		//
 7991		// Distribute app builds to testers and users via Visual Studio
 7992		// App Center
 7993		"task"!: null | bool | number | =~"^AppCenterDistribute@1$" | [...] | {
 7994			...
 7995		}
 7996
 7997		// App Center distribute inputs
 7998		"inputs"!: null | bool | number | string | [...] | close({
 7999			// App Center service connection
 8000			"serverEndpoint"!: string
 8001
 8002			// App slug
 8003			"appSlug"!: string
 8004
 8005			// Binary file path
 8006			"appFile"!: string
 8007
 8008			// Symbols type
 8009			"symbolsOption"?: "Apple"
 8010
 8011			// Symbols path
 8012			"symbolsPath"?: string
 8013
 8014			// Symbols path (*.pdb)
 8015			"symbolsPdbFiles"?: string
 8016
 8017			// dSYM path
 8018			"symbolsDsymFiles"?: string
 8019
 8020			// Mapping file
 8021			"symbolsMappingTxtFile"?: string
 8022
 8023			// Include all items in parent folder
 8024			"symbolsIncludeParentDirectory"?: bool
 8025
 8026			// Create release notes
 8027			"releaseNotesOption"?: "input" | "file"
 8028
 8029			// Release notes
 8030			"releaseNotesInput"?: string
 8031
 8032			// Release notes file
 8033			"releaseNotesFile"?: string
 8034
 8035			// Require users to update to this release
 8036			"isMandatory"?: bool
 8037
 8038			// Destination ID
 8039			"distributionGroupId"?: string
 8040		})
 8041		...
 8042	}, {
 8043		// App Center distribute
 8044		//
 8045		// Distribute app builds to testers and users via Visual Studio
 8046		// App Center
 8047		"task"!: null | bool | number | =~"^AppCenterDistribute@2$" | [...] | {
 8048			...
 8049		}
 8050
 8051		// App Center distribute inputs
 8052		"inputs"!: null | bool | number | string | [...] | close({
 8053			// App Center service connection
 8054			"serverEndpoint"!: string
 8055
 8056			// App slug
 8057			"appSlug"!: string
 8058
 8059			// Binary file path
 8060			"appFile"!: string
 8061
 8062			// Symbols type
 8063			"symbolsOption"?: "Apple"
 8064
 8065			// Symbols path
 8066			"symbolsPath"?: string
 8067
 8068			// Symbols path (*.pdb)
 8069			"symbolsPdbFiles"?: string
 8070
 8071			// dSYM path
 8072			"symbolsDsymFiles"?: string
 8073
 8074			// Mapping file
 8075			"symbolsMappingTxtFile"?: string
 8076
 8077			// Include all items in parent folder
 8078			"symbolsIncludeParentDirectory"?: bool
 8079
 8080			// Create release notes
 8081			"releaseNotesOption"?: "input" | "file"
 8082
 8083			// Release notes
 8084			"releaseNotesInput"?: string
 8085
 8086			// Release notes file
 8087			"releaseNotesFile"?: string
 8088
 8089			// Require users to update to this release
 8090			"isMandatory"?: bool
 8091
 8092			// Destination IDs
 8093			"distributionGroupId"?: string
 8094		})
 8095		...
 8096	}, {
 8097		// App Center distribute
 8098		//
 8099		// Distribute app builds to testers and users via Visual Studio
 8100		// App Center
 8101		"task"!: null | bool | number | =~"^AppCenterDistribute@3$" | [...] | {
 8102			...
 8103		}
 8104
 8105		// App Center distribute inputs
 8106		"inputs"!: null | bool | number | string | [...] | close({
 8107			// App Center service connection
 8108			"serverEndpoint"!: string
 8109
 8110			// App slug
 8111			"appSlug"!: string
 8112
 8113			// Binary file path
 8114			"appFile"!: string
 8115
 8116			// Build version
 8117			"buildVersion"?: string
 8118
 8119			// Symbols type
 8120			"symbolsOption"?: "Apple" | "Android" | "UWP"
 8121
 8122			// Symbols path
 8123			"symbolsPath"?: string
 8124
 8125			// Symbols path (*.appxsym)
 8126			"appxsymPath"?: string
 8127
 8128			// dSYM path
 8129			"symbolsDsymFiles"?: string
 8130
 8131			// Mapping file
 8132			"symbolsMappingTxtFile"?: string
 8133
 8134			// Native Library File Path
 8135			"nativeLibrariesPath"?: string
 8136
 8137			// Include all items in parent folder
 8138			"symbolsIncludeParentDirectory"?: bool
 8139
 8140			// Create release notes
 8141			"releaseNotesOption"?: "input" | "file"
 8142
 8143			// Release notes
 8144			"releaseNotesInput"?: string
 8145
 8146			// Release notes file
 8147			"releaseNotesFile"?: string
 8148
 8149			// Require users to update to this release
 8150			"isMandatory"?: bool
 8151
 8152			// Release destination
 8153			"destinationType"?: "groups" | "store"
 8154
 8155			// Destination IDs
 8156			"distributionGroupId"?: string
 8157
 8158			// Destination ID
 8159			"destinationStoreId"?: string
 8160
 8161			// Do not notify testers. Release will still be available to
 8162			// install.
 8163			"isSilent"?: bool
 8164		})
 8165		...
 8166	}, {
 8167		// App Center Distribute
 8168		//
 8169		// Distribute app builds to testers and users via App Center
 8170		"task"!: null | bool | number | =~"^AppCenterDistribute@0$" | [...] | {
 8171			...
 8172		}
 8173
 8174		// App Center Distribute inputs
 8175		"inputs"!: null | bool | number | string | [...] | close({
 8176			// App Center connection
 8177			"serverEndpoint"!: string
 8178
 8179			// App slug
 8180			"appSlug"!: string
 8181
 8182			// Binary file path
 8183			"appFile"!: string
 8184
 8185			// Symbols type
 8186			"symbolsOption"?: "Apple"
 8187
 8188			// Symbols path
 8189			"symbolsPath"?: string
 8190
 8191			// Symbols path (*.pdb)
 8192			"symbolsPdbFiles"?: string
 8193
 8194			// dSYM path
 8195			"symbolsDsymFiles"?: string
 8196
 8197			// Mapping file
 8198			"symbolsMappingTxtFile"?: string
 8199
 8200			// Include all items in parent folder
 8201			"symbolsIncludeParentDirectory"?: bool
 8202
 8203			// Create release notes
 8204			"releaseNotesOption"?: "input" | "file"
 8205
 8206			// Release notes
 8207			"releaseNotesInput"?: string
 8208
 8209			// Release notes file
 8210			"releaseNotesFile"?: string
 8211
 8212			// Distribution group ID
 8213			"distributionGroupId"?: string
 8214		})
 8215		...
 8216	}, {
 8217		// NuGet tool installer
 8218		//
 8219		// Acquires a specific version of NuGet from the internet or the
 8220		// tools cache and adds it to the PATH. Use this task to change
 8221		// the version of NuGet used in the NuGet tasks.
 8222		"task"!: null | bool | number | =~"^NuGetToolInstaller@0$" | [...] | {
 8223			...
 8224		}
 8225
 8226		// NuGet tool installer inputs
 8227		"inputs"?: null | bool | number | string | [...] | close({
 8228			// Version of NuGet.exe to install
 8229			"versionSpec"?: string
 8230
 8231			// Always download the latest matching version
 8232			"checkLatest"?: bool
 8233		})
 8234		...
 8235	}, {
 8236		// NuGet tool installer
 8237		//
 8238		// Acquires a specific version of NuGet from the internet or the
 8239		// tools cache and adds it to the PATH. Use this task to change
 8240		// the version of NuGet used in the NuGet tasks.
 8241		"task"!: null | bool | number | =~"^NuGetToolInstaller@1$" | [...] | {
 8242			...
 8243		}
 8244
 8245		// NuGet tool installer inputs
 8246		"inputs"?: null | bool | number | string | [...] | close({
 8247			// Version of NuGet.exe to install
 8248			"versionSpec"?: string
 8249
 8250			// Always check for new versions
 8251			"checkLatest"?: bool
 8252		})
 8253		...
 8254	}, {
 8255		// Jenkins download artifacts
 8256		//
 8257		// Download artifacts produced by a Jenkins job
 8258		"task"!: null | bool | number | =~"^JenkinsDownloadArtifacts@2$" | [...] | {
 8259			...
 8260		}
 8261
 8262		// Jenkins download artifacts inputs
 8263		"inputs"!: null | bool | number | string | [...] | close({
 8264			// Jenkins service connection
 8265			"jenkinsServerConnection"!: string
 8266
 8267			// Job name
 8268			"jobName"!: string
 8269
 8270			// Jenkins job type
 8271			"jenkinsJobType"?: string
 8272
 8273			// Save to
 8274			"saveTo"?: string
 8275
 8276			// Download artifacts produced by
 8277			"jenkinsBuild"?: "LastSuccessfulBuild" | "BuildNumber"
 8278
 8279			// Jenkins build number
 8280			"jenkinsBuildNumber"?: string
 8281
 8282			// Item Pattern
 8283			"itemPattern"?: string
 8284
 8285			// Download Commits and WorkItems
 8286			"downloadCommitsAndWorkItems"?: bool
 8287
 8288			// Download commits and work items from
 8289			"startJenkinsBuildNumber"?: string
 8290
 8291			// Commit and WorkItem FileName
 8292			"artifactDetailsFileNameSuffix"?: string
 8293
 8294			// Artifacts are propagated to Azure
 8295			"propagatedArtifacts"?: bool
 8296
 8297			// Artifact Provider
 8298			"artifactProvider"?: "azureStorage"
 8299
 8300			// Azure Subscription
 8301			"ConnectedServiceNameARM"?: string
 8302
 8303			// Storage Account Name
 8304			"storageAccountName"?: string
 8305
 8306			// Container Name
 8307			"containerName"?: string
 8308
 8309			// Common Virtual Path
 8310			"commonVirtualPath"?: string
 8311		})
 8312		...
 8313	}, {
 8314		// Jenkins download artifacts
 8315		//
 8316		// Download artifacts produced by a Jenkins job
 8317		"task"!: null | bool | number | =~"^JenkinsDownloadArtifacts@1$" | [...] | {
 8318			...
 8319		}
 8320
 8321		// Jenkins download artifacts inputs
 8322		"inputs"!: null | bool | number | string | [...] | close({
 8323			// Jenkins service connection
 8324			"jenkinsServerConnection"!: string
 8325
 8326			// Job name
 8327			"jobName"!: string
 8328
 8329			// Jenkins job type
 8330			"jenkinsJobType"?: string
 8331
 8332			// Save to
 8333			"saveTo"?: string
 8334
 8335			// Download artifacts produced by
 8336			"jenkinsBuild"?: "LastSuccessfulBuild" | "BuildNumber"
 8337
 8338			// Jenkins build number
 8339			"jenkinsBuildNumber"?: string
 8340
 8341			// Item Pattern
 8342			"itemPattern"?: string
 8343
 8344			// Download Commits and WorkItems
 8345			"downloadCommitsAndWorkItems"?: bool
 8346
 8347			// Download commits and work items from
 8348			"startJenkinsBuildNumber"?: string
 8349
 8350			// Commit and WorkItem FileName
 8351			"artifactDetailsFileNameSuffix"?: string
 8352
 8353			// Artifacts are propagated to Azure
 8354			"propagatedArtifacts"?: bool
 8355
 8356			// Artifact Provider
 8357			"artifactProvider"?: "azureStorage"
 8358
 8359			// Azure Subscription
 8360			"ConnectedServiceNameARM"?: string
 8361
 8362			// Storage Account Name
 8363			"storageAccountName"?: string
 8364
 8365			// Container Name
 8366			"containerName"?: string
 8367
 8368			// Common Virtual Path
 8369			"commonVirtualPath"?: string
 8370		})
 8371		...
 8372	}, {
 8373		// Jenkins download artifacts
 8374		//
 8375		// Download artifacts produced by a Jenkins job
 8376		"task"!: null | bool | number | =~"^JenkinsDownloadArtifacts@2$" | [...] | {
 8377			...
 8378		}
 8379
 8380		// Jenkins download artifacts inputs
 8381		"inputs"!: null | bool | number | string | [...] | close({
 8382			// Jenkins service connection
 8383			"jenkinsServerConnection"!: string
 8384
 8385			// Job name
 8386			"jobName"!: string
 8387
 8388			// Jenkins job type
 8389			"jenkinsJobType"?: string
 8390
 8391			// Save to
 8392			"saveTo"?: string
 8393
 8394			// Download artifacts produced by
 8395			"jenkinsBuild"?: "LastSuccessfulBuild" | "BuildNumber"
 8396
 8397			// Jenkins build number
 8398			"jenkinsBuildNumber"?: string
 8399
 8400			// Item Pattern
 8401			"itemPattern"?: string
 8402
 8403			// Download Commits and WorkItems
 8404			"downloadCommitsAndWorkItems"?: bool
 8405
 8406			// Download commits and work items from
 8407			"startJenkinsBuildNumber"?: string
 8408
 8409			// Commit and WorkItem FileName
 8410			"artifactDetailsFileNameSuffix"?: string
 8411
 8412			// Artifacts are propagated to Azure
 8413			"propagatedArtifacts"?: bool
 8414
 8415			// Artifact Provider
 8416			"artifactProvider"?: "azureStorage"
 8417
 8418			// Azure Subscription
 8419			"ConnectedServiceNameARM"?: string
 8420
 8421			// Storage Account Name
 8422			"storageAccountName"?: string
 8423
 8424			// Container Name
 8425			"containerName"?: string
 8426
 8427			// Common Virtual Path
 8428			"commonVirtualPath"?: string
 8429		})
 8430		...
 8431	}, {
 8432		// Azure Functions for container
 8433		//
 8434		// Update a function app with a Docker container
 8435		"task"!: null | bool | number | =~"^AzureFunctionAppContainer@1$" | [...] | {
 8436			...
 8437		}
 8438
 8439		// Azure Functions for container inputs
 8440		"inputs"!: null | bool | number | string | [...] | close({
 8441			// Azure subscription
 8442			"azureSubscription"!: string
 8443
 8444			// App name
 8445			"appName"!: string
 8446
 8447			// Deploy to Slot or App Service Environment
 8448			"deployToSlotOrASE"?: bool
 8449
 8450			// Resource group
 8451			"resourceGroupName"?: string
 8452
 8453			// Slot
 8454			"slotName"?: string
 8455
 8456			// Image name
 8457			"imageName"!: string
 8458
 8459			// Startup command
 8460			"containerCommand"?: string
 8461
 8462			// App settings
 8463			"appSettings"?: string
 8464
 8465			// Configuration settings
 8466			"configurationStrings"?: string
 8467		})
 8468		...
 8469	}, {
 8470		// Decrypt file (OpenSSL)
 8471		//
 8472		// Decrypt a file using OpenSSL
 8473		"task"!: null | bool | number | =~"^DecryptFile@1$" | [...] | {
 8474			...
 8475		}
 8476
 8477		// Decrypt file (OpenSSL) inputs
 8478		"inputs"!: null | bool | number | string | [...] | close({
 8479			// Cypher
 8480			"cipher"?: string
 8481
 8482			// Encrypted file
 8483			"inFile"!: string
 8484
 8485			// Passphrase
 8486			"passphrase"!: string
 8487
 8488			// Decrypted file path
 8489			"outFile"?: string
 8490
 8491			// Working directory
 8492			"workingDirectory"?: string
 8493		})
 8494		...
 8495	}, {
 8496		// Package and deploy Helm charts
 8497		//
 8498		// Deploy, configure, update a Kubernetes cluster in Azure
 8499		// Container Service by running helm commands
 8500		"task"!: null | bool | number | =~"^HelmDeploy@1$" | [...] | {
 8501			...
 8502		}
 8503
 8504		// Package and deploy Helm charts inputs
 8505		"inputs"!: null | bool | number | string | [...] | close({
 8506			// Connection Type
 8507			"connectionType"?: "Azure Resource Manager" | "Kubernetes Service Connection" | "None"
 8508
 8509			// Azure subscription
 8510			"azureSubscription"?: string
 8511
 8512			// Resource group
 8513			"azureResourceGroup"?: string
 8514
 8515			// Kubernetes cluster
 8516			"kubernetesCluster"?: string
 8517
 8518			// Use cluster admin credentials
 8519			"useClusterAdmin"?: bool
 8520
 8521			// Kubernetes Service Connection
 8522			"kubernetesServiceConnection"?: string
 8523
 8524			// Namespace
 8525			"namespace"?: string
 8526
 8527			// Azure subscription for Container Registry
 8528			"azureSubscriptionForACR"!: string
 8529
 8530			// Resource group
 8531			"azureResourceGroupForACR"!: string
 8532
 8533			// Azure Container Registry
 8534			"azureContainerRegistry"!: string
 8535
 8536			// Command
 8537			"command"?: "create" | "delete" | "expose" | "get" | "init" | "install" | "login" | "logout" | "ls" | "package" | "rollback" | "upgrade" | "uninstall"
 8538
 8539			// Chart Type
 8540			"chartType"?: "Name" | "FilePath"
 8541
 8542			// Chart Name
 8543			"chartName"?: string
 8544
 8545			// Chart Path
 8546			"chartPath"?: string
 8547
 8548			// Version
 8549			"chartVersion"?: string
 8550
 8551			// Release Name
 8552			"releaseName"?: string
 8553
 8554			// Set Values
 8555			"overrideValues"?: string
 8556
 8557			// Value File
 8558			"valueFile"?: string
 8559
 8560			// Destination
 8561			"destination"?: string
 8562
 8563			// Use canary image version.
 8564			"canaryImage"?: bool
 8565
 8566			// Upgrade Tiller
 8567			"upgradeTiller"?: bool
 8568
 8569			// Update Dependency
 8570			"updateDependency"?: bool
 8571
 8572			// Save
 8573			"save"?: bool
 8574
 8575			// Install if release not present.
 8576			"install"?: bool
 8577
 8578			// Recreate Pods.
 8579			"recreate"?: bool
 8580
 8581			// Reset Values.
 8582			"resetValues"?: bool
 8583
 8584			// Force
 8585			"force"?: bool
 8586
 8587			// Wait
 8588			"waitForExecution"?: bool
 8589
 8590			// Arguments
 8591			"arguments"?: string
 8592
 8593			// Enable TLS
 8594			"enableTls"?: bool
 8595
 8596			// CA certificate
 8597			"caCert"?: string
 8598
 8599			// Certificate
 8600			"certificate"?: string
 8601
 8602			// Key
 8603			"privatekey"?: string
 8604
 8605			// Tiller namespace
 8606			"tillerNamespace"?: string
 8607
 8608			// Fail on Standard Error
 8609			"failOnStderr"?: bool
 8610
 8611			// Publish pipeline metadata
 8612			"publishPipelineMetadata"?: bool
 8613
 8614			// Chart Name For Azure Container Registry
 8615			"chartNameForACR"?: string
 8616
 8617			// Chart Path for Azure Container Registry
 8618			"chartPathForACR"?: string
 8619		})
 8620		...
 8621	}, {
 8622		// Package and deploy Helm charts
 8623		//
 8624		// Deploy, configure, update a Kubernetes cluster in Azure
 8625		// Container Service by running helm commands
 8626		"task"!: null | bool | number | =~"^HelmDeploy@0$" | [...] | {
 8627			...
 8628		}
 8629
 8630		// Package and deploy Helm charts inputs
 8631		"inputs"!: null | bool | number | string | [...] | close({
 8632			// Connection Type
 8633			"connectionType"?: "Azure Resource Manager" | "Kubernetes Service Connection" | "None"
 8634
 8635			// Azure subscription
 8636			"azureSubscription"?: string
 8637
 8638			// Resource group
 8639			"azureResourceGroup"?: string
 8640
 8641			// Kubernetes cluster
 8642			"kubernetesCluster"?: string
 8643
 8644			// Use cluster admin credentials
 8645			"useClusterAdmin"?: bool
 8646
 8647			// Kubernetes Service Connection
 8648			"kubernetesServiceConnection"?: string
 8649
 8650			// Namespace
 8651			"namespace"?: string
 8652
 8653			// Azure subscription for Container Registry
 8654			"azureSubscriptionForACR"!: string
 8655
 8656			// Resource group
 8657			"azureResourceGroupForACR"!: string
 8658
 8659			// Azure Container Registry
 8660			"azureContainerRegistry"!: string
 8661
 8662			// Command
 8663			"command"?: "create" | "delete" | "expose" | "get" | "init" | "install" | "login" | "logout" | "ls" | "push" | "package" | "rollback" | "save" | "upgrade" | "uninstall"
 8664
 8665			// Chart Type
 8666			"chartType"?: "Name" | "FilePath"
 8667
 8668			// Chart Name
 8669			"chartName"?: string
 8670
 8671			// Chart Path
 8672			"chartPath"?: string
 8673
 8674			// Remote Repo
 8675			"remoteRepo"?: string
 8676
 8677			// Version
 8678			"chartVersion"?: string
 8679
 8680			// Release Name
 8681			"releaseName"?: string
 8682
 8683			// Set Values
 8684			"overrideValues"?: string
 8685
 8686			// Value File
 8687			"valueFile"?: string
 8688
 8689			// Destination
 8690			"destination"?: string
 8691
 8692			// Use canary image version.
 8693			"canaryImage"?: bool
 8694
 8695			// Upgrade Tiller
 8696			"upgradeTiller"?: bool
 8697
 8698			// Update Dependency
 8699			"updateDependency"?: bool
 8700
 8701			// Save
 8702			"save"?: bool
 8703
 8704			// Install if release not present.
 8705			"install"?: bool
 8706
 8707			// Recreate Pods.
 8708			"recreate"?: bool
 8709
 8710			// Reset Values.
 8711			"resetValues"?: bool
 8712
 8713			// Force
 8714			"force"?: bool
 8715
 8716			// Wait
 8717			"waitForExecution"?: bool
 8718
 8719			// Arguments
 8720			"arguments"?: string
 8721
 8722			// Enable TLS
 8723			"enableTls"?: bool
 8724
 8725			// CA certificate
 8726			"caCert"?: string
 8727
 8728			// Certificate
 8729			"certificate"?: string
 8730
 8731			// Key
 8732			"privatekey"?: string
 8733
 8734			// Tiller namespace
 8735			"tillerNamespace"?: string
 8736
 8737			// Fail on Standard Error
 8738			"failOnStderr"?: bool
 8739
 8740			// Publish pipeline metadata
 8741			"publishPipelineMetadata"?: bool
 8742
 8743			// Chart Name For Azure Container Registry
 8744			"chartNameForACR"?: string
 8745
 8746			// Chart Path for Azure Container Registry
 8747			"chartPathForACR"?: string
 8748		})
 8749		...
 8750	}, {
 8751		// Install Apple certificate
 8752		//
 8753		// Install an Apple certificate required to build on a macOS agent
 8754		// machine
 8755		"task"!: null | bool | number | =~"^InstallAppleCertificate@2$" | [...] | {
 8756			...
 8757		}
 8758
 8759		// Install Apple certificate inputs
 8760		"inputs"!: null | bool | number | string | [...] | close({
 8761			// Certificate (P12)
 8762			"certSecureFile"!: string
 8763
 8764			// Certificate (P12) password
 8765			"certPwd"?: string
 8766
 8767			// Keychain
 8768			"keychain"?: "default" | "temp" | "custom"
 8769
 8770			// Keychain password
 8771			"keychainPassword"?: string
 8772
 8773			// Custom keychain path
 8774			"customKeychainPath"?: string
 8775
 8776			// Delete certificate from keychain
 8777			"deleteCert"?: bool
 8778
 8779			// Delete custom keychain
 8780			"deleteCustomKeychain"?: bool
 8781
 8782			// Certificate signing identity
 8783			"signingIdentity"?: string
 8784
 8785			// Set up partition_id ACL for the imported private key
 8786			"setUpPartitionIdACLForPrivateKey"?: bool
 8787
 8788			// OpenSSL arguments for PKCS12
 8789			"opensslPkcsArgs"?: string
 8790		})
 8791		...
 8792	}, {
 8793		// Install Apple Certificate
 8794		//
 8795		// Install an Apple certificate required to build on a macOS agent
 8796		"task"!: null | bool | number | =~"^InstallAppleCertificate@1$" | [...] | {
 8797			...
 8798		}
 8799
 8800		// Install Apple Certificate inputs
 8801		"inputs"!: null | bool | number | string | [...] | close({
 8802			// Certificate (P12)
 8803			"certSecureFile"!: string
 8804
 8805			// Certificate (P12) password
 8806			"certPwd"?: string
 8807
 8808			// Keychain
 8809			"keychain"?: "default" | "temp" | "custom"
 8810
 8811			// Keychain password
 8812			"keychainPassword"?: string
 8813
 8814			// Custom keychain path
 8815			"customKeychainPath"?: string
 8816
 8817			// Delete certificate from keychain
 8818			"deleteCert"?: bool
 8819
 8820			// Delete custom keychain
 8821			"deleteCustomKeychain"?: bool
 8822
 8823			// Certificate signing identity
 8824			"signingIdentity"?: string
 8825		})
 8826		...
 8827	}, {
 8828		// Install Apple Certificate
 8829		//
 8830		// Install an Apple certificate required to build on a macOS agent
 8831		"task"!: null | bool | number | =~"^InstallAppleCertificate@0$" | [...] | {
 8832			...
 8833		}
 8834
 8835		// Install Apple Certificate inputs
 8836		"inputs"!: null | bool | number | string | [...] | close({
 8837			// Certificate (P12)
 8838			"certSecureFile"!: string
 8839
 8840			// Certificate (P12) Password
 8841			"certPwd"?: string
 8842
 8843			// Keychain
 8844			"keychain"?: "default" | "temp" | "custom"
 8845
 8846			// Keychain Password
 8847			"keychainPassword"?: string
 8848
 8849			// Custom Keychain Path
 8850			"customKeychainPath"?: string
 8851
 8852			// Delete Certificate from Keychain
 8853			"deleteCert"?: bool
 8854
 8855			// Delete Custom Keychain
 8856			"deleteCustomKeychain"?: bool
 8857
 8858			// Certificate Signing Identity
 8859			"signingIdentity"?: string
 8860		})
 8861		...
 8862	}, {
 8863		// Invoke Azure Function
 8864		//
 8865		// Invoke an Azure Function
 8866		"task"!: null | bool | number | =~"^AzureFunction@1$" | [...] | {
 8867			...
 8868		}
 8869
 8870		// Invoke Azure Function inputs
 8871		"inputs"!: null | bool | number | string | [...] | close({
 8872			// Azure function URL
 8873			"function"!: string
 8874
 8875			// Function key
 8876			"key"!: string
 8877
 8878			// Method
 8879			"method"?: "OPTIONS" | "GET" | "HEAD" | "POST" | "PUT" | "DELETE" | "TRACE" | "PATCH"
 8880
 8881			// Headers
 8882			"headers"?: string
 8883
 8884			// Query parameters
 8885			"queryParameters"?: string
 8886
 8887			// Body
 8888			"body"?: string
 8889
 8890			// Completion event
 8891			"waitForCompletion"?: "true" | "false"
 8892
 8893			// Success criteria
 8894			"successCriteria"?: string
 8895		})
 8896		...
 8897	}, {
 8898		// Invoke Azure Function
 8899		//
 8900		// Invoke Azure function as a part of your process.
 8901		"task"!: null | bool | number | =~"^AzureFunction@0$" | [...] | {
 8902			...
 8903		}
 8904
 8905		// Invoke Azure Function inputs
 8906		"inputs"!: null | bool | number | string | [...] | close({
 8907			// Azure function url
 8908			"function"!: string
 8909
 8910			// Function key
 8911			"key"!: string
 8912
 8913			// Method
 8914			"method"?: "OPTIONS" | "GET" | "HEAD" | "POST" | "PUT" | "DELETE" | "TRACE" | "PATCH"
 8915
 8916			// Headers
 8917			"headers"?: string
 8918
 8919			// Query parameters
 8920			"queryParameters"?: string
 8921
 8922			// Body
 8923			"body"?: string
 8924
 8925			// Complete based on
 8926			"waitForCompletion"?: "true" | "false"
 8927
 8928			// Success criteria
 8929			"successCriteria"?: string
 8930		})
 8931		...
 8932	}, {
 8933		// Open Policy Agent Installer
 8934		//
 8935		// Install Open Policy Agent on agent machine
 8936		"task"!: null | bool | number | =~"^OpenPolicyAgentInstaller@0$" | [...] | {
 8937			...
 8938		}
 8939
 8940		// Open Policy Agent Installer inputs
 8941		"inputs"?: null | bool | number | string | [...] | close({
 8942			// OPA Version Spec
 8943			"opaVersion"?: string
 8944		})
 8945		...
 8946	}, {
 8947		// Download GitHub Release
 8948		//
 8949		// Downloads a GitHub Release from a repository
 8950		"task"!: null | bool | number | =~"^DownloadGitHubRelease@0$" | [...] | {
 8951			...
 8952		}
 8953
 8954		// Download GitHub Release inputs
 8955		"inputs"!: null | bool | number | string | [...] | close({
 8956			// GitHub Connection
 8957			"connection"!: string
 8958
 8959			// Repository
 8960			"userRepository"!: string
 8961
 8962			// Default version
 8963			"defaultVersionType"?: "latest" | "specificVersion" | "specificTag"
 8964
 8965			// Release
 8966			"version"?: string
 8967
 8968			// Item Pattern
 8969			"itemPattern"?: string
 8970
 8971			// Destination directory
 8972			"downloadPath"?: string
 8973		})
 8974		...
 8975	}, {
 8976		// SSH
 8977		//
 8978		// Run shell commands or a script on a remote machine using SSH
 8979		"task"!: null | bool | number | =~"^SSH@0$" | [...] | {
 8980			...
 8981		}
 8982
 8983		// SSH inputs
 8984		"inputs"!: null | bool | number | string | [...] | close({
 8985			// SSH service connection
 8986			"sshEndpoint"!: string
 8987
 8988			// Run
 8989			"runOptions"?: "commands" | "script" | "inline"
 8990
 8991			// Commands
 8992			"commands"?: string
 8993
 8994			// Shell script path
 8995			"scriptPath"?: string
 8996
 8997			// Inline Script
 8998			"inline"?: string
 8999
 9000			// Interpreter command
 9001			"interpreterCommand"?: string
 9002
 9003			// Arguments
 9004			"args"?: string
 9005
 9006			// Fail on STDERR
 9007			"failOnStdErr"?: bool
 9008
 9009			// Enable interactive session
 9010			"interactiveSession"?: bool
 9011
 9012			// SSH handshake timeout
 9013			"readyTimeout"?: string
 9014
 9015			// Use interactive-keyboard authentication
 9016			"interactiveKeyboardAuthentication"?: bool
 9017		})
 9018		...
 9019	}, {
 9020		// Publish pipeline artifact
 9021		//
 9022		// Publish a local directory or file as a named artifact for the
 9023		// current pipeline
 9024		"task"!: null | bool | number | =~"^PublishPipelineArtifact@0$" | [...] | {
 9025			...
 9026		}
 9027
 9028		// Publish pipeline artifact inputs
 9029		"inputs"!: null | bool | number | string | [...] | close({
 9030			// The name of this artifact
 9031			"artifactName"?: string
 9032
 9033			// Path to publish
 9034			"targetPath"!: string
 9035
 9036			// Custom properties
 9037			"properties"?: string
 9038		})
 9039		...
 9040	}, {
 9041		// Publish Pipeline Artifacts
 9042		//
 9043		// Publish (upload) a file or directory as a named artifact for
 9044		// the current run
 9045		"task"!: null | bool | number | =~"^PublishPipelineArtifact@1$" | [...] | {
 9046			...
 9047		}
 9048
 9049		// Publish Pipeline Artifacts inputs
 9050		"inputs"?: null | bool | number | string | [...] | close({
 9051			// File or directory path
 9052			"targetPath"?: string
 9053
 9054			// Artifact name
 9055			"artifact"?: string
 9056
 9057			// Artifact publish location
 9058			"publishLocation"?: "pipeline" | "filepath"
 9059
 9060			// File share path
 9061			"fileSharePath"?: string
 9062
 9063			// Parallel copy
 9064			"parallel"?: bool
 9065
 9066			// Parallel count
 9067			"parallelCount"?: int
 9068
 9069			// Custom properties
 9070			"properties"?: string
 9071		})
 9072		...
 9073	}, {
 9074		// SonarQube for MSBuild - Begin Analysis
 9075		//
 9076		// [DEPRECATED] Fetch the Quality Profile from SonarQube to
 9077		// configure the analysis
 9078		"task"!: null | bool | number | =~"^SonarQubePreBuild@1$" | [...] | {
 9079			...
 9080		}
 9081
 9082		// SonarQube for MSBuild - Begin Analysis inputs
 9083		"inputs"!: null | bool | number | string | [...] | close({
 9084			// Project Key
 9085			"projectKey"!: string
 9086
 9087			// Project Name
 9088			"projectName"!: string
 9089
 9090			// Project Version
 9091			"projectVersion"?: string
 9092
 9093			// SonarQube Endpoint
 9094			"connectedServiceName"!: string
 9095
 9096			// Db Connection String
 9097			"dbUrl"?: string
 9098
 9099			// Db UserName
 9100			"dbUsername"?: string
 9101
 9102			// Db User Password
 9103			"dbPassword"?: string
 9104
 9105			// Additional Settings
 9106			"cmdLineArgs"?: string
 9107
 9108			// Settings File
 9109			"configFile"?: string
 9110
 9111			// Include full analysis report in the build summary (SQ 5.3+)
 9112			"includeFullReport"?: bool
 9113
 9114			// Fail the build on quality gate failure (SQ 5.3+)
 9115			"breakBuild"?: bool
 9116		})
 9117		...
 9118	}, {
 9119		// Download artifacts from file share
 9120		//
 9121		// Download artifacts from a file share, like \\share\drop
 9122		"task"!: null | bool | number | =~"^DownloadFileshareArtifacts@1$" | [...] | {
 9123			...
 9124		}
 9125
 9126		// Download artifacts from file share inputs
 9127		"inputs"!: null | bool | number | string | [...] | close({
 9128			// File share path
 9129			"filesharePath"!: string
 9130
 9131			// Artifact name
 9132			"artifactName"!: string
 9133
 9134			// Matching pattern
 9135			"itemPattern"?: string
 9136
 9137			// Download path
 9138			"downloadPath"?: string
 9139
 9140			// Parallelization limit
 9141			"parallelizationLimit"?: string
 9142		})
 9143		...
 9144	}, {
 9145		// Kubectl
 9146		//
 9147		// Deploy, configure, update a Kubernetes cluster in Azure
 9148		// Container Service by running kubectl commands
 9149		"task"!: null | bool | number | =~"^Kubernetes@1$" | [...] | {
 9150			...
 9151		}
 9152
 9153		// Kubectl inputs
 9154		"inputs"?: null | bool | number | string | [...] | close({
 9155			// Service connection type
 9156			"connectionType"?: "Azure Resource Manager" | "Kubernetes Service Connection" | "None"
 9157
 9158			// Kubernetes service connection
 9159			"kubernetesServiceEndpoint"?: string
 9160
 9161			// Azure subscription
 9162			"azureSubscriptionEndpoint"?: string
 9163
 9164			// Resource group
 9165			"azureResourceGroup"?: string
 9166
 9167			// Kubernetes cluster
 9168			"kubernetesCluster"?: string
 9169
 9170			// Use cluster admin credentials
 9171			"useClusterAdmin"?: bool
 9172
 9173			// Namespace
 9174			"namespace"?: string
 9175
 9176			// Command
 9177			"command"?: "apply" | "create" | "delete" | "exec" | "expose" | "get" | "login" | "logout" | "logs" | "rollout" | "run" | "set" | "top"
 9178
 9179			// Use configuration
 9180			"useConfigurationFile"?: bool
 9181
 9182			// Configuration type
 9183			"configurationType"?: "configuration" | "inline"
 9184
 9185			// File path
 9186			"configuration"?: string
 9187
 9188			// Inline configuration
 9189			"inline"?: string
 9190
 9191			// Arguments
 9192			"arguments"?: string
 9193
 9194			// Type of secret
 9195			"secretType"?: "dockerRegistry" | "generic"
 9196
 9197			// Arguments
 9198			"secretArguments"?: string
 9199
 9200			// Container registry type
 9201			"containerRegistryType"?: "Azure Container Registry" | "Container Registry"
 9202
 9203			// Docker registry service connection
 9204			"dockerRegistryEndpoint"?: string
 9205
 9206			// Azure subscription
 9207			"azureSubscriptionEndpointForSecrets"?: string
 9208
 9209			// Azure container registry
 9210			"azureContainerRegistry"?: string
 9211
 9212			// Secret name
 9213			"secretName"?: string
 9214
 9215			// Force update secret
 9216			"forceUpdate"?: bool
 9217
 9218			// ConfigMap name
 9219			"configMapName"?: string
 9220
 9221			// Force update configmap
 9222			"forceUpdateConfigMap"?: bool
 9223
 9224			// Use file
 9225			"useConfigMapFile"?: bool
 9226
 9227			// ConfigMap file
 9228			"configMapFile"?: string
 9229
 9230			// Arguments
 9231			"configMapArguments"?: string
 9232
 9233			// Kubectl
 9234			"versionOrLocation"?: "version" | "location"
 9235
 9236			// Version spec
 9237			"versionSpec"?: string
 9238
 9239			// Check for latest version
 9240			"checkLatest"?: bool
 9241
 9242			// Path to kubectl
 9243			"specifyLocation"?: string
 9244
 9245			// Working directory
 9246			"workingDirectory"?: string
 9247
 9248			// Output format
 9249			"outputFormat"?: "json" | "yaml" | "none"
 9250		})
 9251		...
 9252	}, {
 9253		// Kubectl
 9254		//
 9255		// Deploy, configure, update a Kubernetes cluster in Azure
 9256		// Container Service by running kubectl commands
 9257		"task"!: null | bool | number | =~"^Kubernetes@0$" | [...] | {
 9258			...
 9259		}
 9260
 9261		// Kubectl inputs
 9262		"inputs"?: null | bool | number | string | [...] | close({
 9263			// Kubernetes service connection
 9264			"kubernetesServiceConnection"?: string
 9265
 9266			// Namespace
 9267			"namespace"?: string
 9268
 9269			// Command
 9270			"command"?: "apply" | "create" | "delete" | "exec" | "expose" | "get" | "logs" | "run" | "set" | "top"
 9271
 9272			// Use Configuration files
 9273			"useConfigurationFile"?: bool
 9274
 9275			// Configuration file
 9276			"configuration"?: string
 9277
 9278			// Arguments
 9279			"arguments"?: string
 9280
 9281			// Type of secret
 9282			"secretType"?: "dockerRegistry" | "generic"
 9283
 9284			// Arguments
 9285			"secretArguments"?: string
 9286
 9287			// Container Registry type
 9288			"containerRegistryType"?: "Azure Container Registry" | "Container Registry"
 9289
 9290			// Docker Registry service connection
 9291			"dockerRegistryConnection"?: string
 9292
 9293			// Azure subscription
 9294			"azureSubscription"?: string
 9295
 9296			// Azure Container Registry
 9297			"azureContainerRegistry"?: string
 9298
 9299			// Secret name
 9300			"secretName"?: string
 9301
 9302			// Force update secret
 9303			"forceUpdate"?: bool
 9304
 9305			// ConfigMap name
 9306			"configMapName"?: string
 9307
 9308			// Force update configmap
 9309			"forceUpdateConfigMap"?: bool
 9310
 9311			// Use file
 9312			"useConfigMapFile"?: bool
 9313
 9314			// ConfigMap file
 9315			"configMapFile"?: string
 9316
 9317			// Arguments
 9318			"configMapArguments"?: string
 9319
 9320			// Kubectl
 9321			"versionOrLocation"?: "version" | "location"
 9322
 9323			// Version spec
 9324			"versionSpec"?: string
 9325
 9326			// Check for latest version
 9327			"checkLatest"?: bool
 9328
 9329			// Path to Kubectl
 9330			"specifyLocation"?: string
 9331
 9332			// Working directory
 9333			"workingDirectory"?: string
 9334
 9335			// Output format
 9336			"outputFormat"?: "json" | "yaml"
 9337
 9338			// Output variable name
 9339			"kubectlOutput"?: string
 9340		})
 9341		...
 9342	}, {
 9343		// Azure IoT Edge
 9344		//
 9345		// Build and deploy an Azure IoT Edge image
 9346		"task"!: null | bool | number | =~"^AzureIoTEdge@2$" | [...] | {
 9347			...
 9348		}
 9349
 9350		// Azure IoT Edge inputs
 9351		"inputs"?: null | bool | number | string | [...] | close({
 9352			// Action
 9353			"action"?: "Build module images" | "Push module images" | "Generate deployment manifest" | "Deploy to IoT Edge devices"
 9354
 9355			// Deployment file
 9356			"deploymentFilePath"?: string
 9357
 9358			// Azure subscription contains IoT Hub
 9359			"azureSubscription"?: string
 9360
 9361			// IoT Hub name
 9362			"iothubname"?: string
 9363
 9364			// IoT Edge deployment ID
 9365			"deploymentid"?: string
 9366
 9367			// IoT Edge deployment priority
 9368			"priority"?: string
 9369
 9370			// Choose single/multiple device
 9371			"deviceOption"?: "Single Device" | "Multiple Devices"
 9372
 9373			// IoT Edge device ID
 9374			"deviceId"?: string
 9375
 9376			// IoT Edge device target condition
 9377			"targetcondition"?: string
 9378
 9379			// Container registry type
 9380			"containerregistrytype"?: "Azure Container Registry" | "Generic Container Registry"
 9381
 9382			// Docker Registry Connection
 9383			"dockerRegistryConnection"?: string
 9384
 9385			// Azure subscription
 9386			"azureSubscriptionEndpoint"?: string
 9387
 9388			// Azure Container Registry
 9389			"azureContainerRegistry"?: string
 9390
 9391			// .template.json file
 9392			"templateFilePath"?: string
 9393
 9394			// Default platform
 9395			"defaultPlatform"?: "amd64" | "windows-amd64" | "arm32v7" | "arm64v8"
 9396
 9397			// Add registry credential to deployment manifest
 9398			"fillRegistryCredential"?: "true" | "false"
 9399
 9400			// Output path
 9401			"deploymentManifestOutputPath"?: string
 9402
 9403			// Validate the schema of generated deployment manifest
 9404			"validateGeneratedDeploymentManifest"?: "true" | "false"
 9405
 9406			// Bypass module(s)
 9407			"bypassModules"?: string
 9408		})
 9409		...
 9410	}, {
 9411		// Service Fabric Compose deploy
 9412		//
 9413		// Deploy a Docker Compose application to an Azure Service Fabric
 9414		// cluster
 9415		"task"!: null | bool | number | =~"^ServiceFabricComposeDeploy@0$" | [...] | {
 9416			...
 9417		}
 9418
 9419		// Service Fabric Compose deploy inputs
 9420		"inputs"!: null | bool | number | string | [...] | close({
 9421			// Cluster Service Connection
 9422			"clusterConnection"!: string
 9423
 9424			// Compose File Path
 9425			"composeFilePath"?: string
 9426
 9427			// Application Name
 9428			"applicationName"?: string
 9429
 9430			// Registry Credentials Source
 9431			"registryCredentials"?: "AzureResourceManagerEndpoint" | "ContainerRegistryEndpoint" | "UsernamePassword" | "None"
 9432
 9433			// Docker Registry Service Connection
 9434			"dockerRegistryConnection"?: string
 9435
 9436			// Azure subscription
 9437			"azureSubscription"?: string
 9438
 9439			// Registry User Name
 9440			"registryUserName"?: string
 9441
 9442			// Registry Password
 9443			"registryPassword"?: string
 9444
 9445			// Password Encrypted
 9446			"passwordEncrypted"?: bool
 9447
 9448			// Upgrade
 9449			"upgrade"?: bool
 9450
 9451			// Deploy Timeout (s)
 9452			"deployTimeoutSec"?: string
 9453
 9454			// Remove Timeout (s)
 9455			"removeTimeoutSec"?: string
 9456
 9457			// Get Status Timeout (s)
 9458			"getStatusTimeoutSec"?: string
 9459		})
 9460		...
 9461	}, {
 9462		// Android Signing
 9463		//
 9464		// Sign and align Android APK files
 9465		"task"!: null | bool | number | =~"^AndroidSigning@1$" | [...] | {
 9466			...
 9467		}
 9468
 9469		// Android Signing inputs
 9470		"inputs"!: null | bool | number | string | [...] | close({
 9471			// APK Files
 9472			"files"!: string
 9473
 9474			// Sign the APK
 9475			"jarsign"?: bool
 9476
 9477			// Keystore File
 9478			"keystoreFile"?: string
 9479
 9480			// Keystore Password
 9481			"keystorePass"?: string
 9482
 9483			// Alias
 9484			"keystoreAlias"?: string
 9485
 9486			// Key Password
 9487			"keyPass"?: string
 9488
 9489			// Jarsigner Arguments
 9490			"jarsignerArguments"?: string
 9491
 9492			// Zipalign
 9493			"zipalign"?: bool
 9494
 9495			// Zipalign Location
 9496			"zipalignLocation"?: string
 9497		})
 9498		...
 9499	}, {
 9500		// Android signing
 9501		//
 9502		// Sign and align Android APK files
 9503		"task"!: null | bool | number | =~"^AndroidSigning@2$" | [...] | {
 9504			...
 9505		}
 9506
 9507		// Android signing inputs
 9508		"inputs"?: null | bool | number | string | [...] | close({
 9509			// APK files
 9510			"apkFiles"?: string
 9511
 9512			// Sign the APK
 9513			"jarsign"?: bool
 9514
 9515			// Keystore file
 9516			"jarsignerKeystoreFile"?: string
 9517
 9518			// Keystore password
 9519			"jarsignerKeystorePassword"?: string
 9520
 9521			// Alias
 9522			"jarsignerKeystoreAlias"?: string
 9523
 9524			// Key password
 9525			"jarsignerKeyPassword"?: string
 9526
 9527			// Jarsigner arguments
 9528			"jarsignerArguments"?: string
 9529
 9530			// Zipalign
 9531			"zipalign"?: bool
 9532
 9533			// Zipalign location
 9534			"zipalignFile"?: string
 9535		})
 9536		...
 9537	}, {
 9538		// Android signing
 9539		//
 9540		// Sign and align Android APK files
 9541		"task"!: null | bool | number | =~"^AndroidSigning@3$" | [...] | {
 9542			...
 9543		}
 9544
 9545		// Android signing inputs
 9546		"inputs"?: null | bool | number | string | [...] | close({
 9547			// APK files
 9548			"apkFiles"?: string
 9549
 9550			// Sign the APK
 9551			"apksign"?: bool
 9552
 9553			// Keystore file
 9554			"apksignerKeystoreFile"?: string
 9555
 9556			// Keystore password
 9557			"apksignerKeystorePassword"?: string
 9558
 9559			// Alias
 9560			"apksignerKeystoreAlias"?: string
 9561
 9562			// Key password
 9563			"apksignerKeyPassword"?: string
 9564
 9565			// apksigner version
 9566			"apksignerVersion"?: string
 9567
 9568			// apksigner arguments
 9569			"apksignerArguments"?: string
 9570
 9571			// apksigner location
 9572			"apksignerFile"?: string
 9573
 9574			// Zipalign
 9575			"zipalign"?: bool
 9576
 9577			// Zipalign version
 9578			"zipalignVersion"?: string
 9579
 9580			// Zipalign location
 9581			"zipalignFile"?: string
 9582		})
 9583		...
 9584	}, {
 9585		// Download pipeline artifact
 9586		//
 9587		// Downloads an artifact associated with a pipeline
 9588		"task"!: null | bool | number | =~"^DownloadPipelineArtifact@0$" | [...] | {
 9589			...
 9590		}
 9591
 9592		// Download pipeline artifact inputs
 9593		"inputs"!: null | bool | number | string | [...] | close({
 9594			// The specific pipeline to download from
 9595			"pipelineId"?: string
 9596
 9597			// The name of artifact to download.
 9598			"artifactName"?: string
 9599
 9600			// Path to download to
 9601			"targetPath"!: string
 9602		})
 9603		...
 9604	}, {
 9605		// Download Pipeline Artifacts
 9606		//
 9607		// Download build and pipeline artifacts
 9608		"task"!: null | bool | number | =~"^DownloadPipelineArtifact@2$" | [...] | {
 9609			...
 9610		}
 9611
 9612		// Download Pipeline Artifacts inputs
 9613		"inputs"?: null | bool | number | string | [...] | close({
 9614			// Download artifacts produced by
 9615			"buildType"?: "current" | "specific"
 9616
 9617			// Project
 9618			"project"?: string
 9619
 9620			// Build pipeline
 9621			"definition"?: string
 9622
 9623			// When appropriate, download artifacts from the triggering build.
 9624			"specificBuildWithTriggering"?: bool
 9625
 9626			// Build version to download
 9627			"buildVersionToDownload"?: "latest" | "latestFromBranch" | "specific"
 9628
 9629			// Branch name
 9630			"branchName"?: string
 9631
 9632			// Build
 9633			"pipelineId"?: string
 9634
 9635			// Build Tags
 9636			"tags"?: string
 9637
 9638			// Download artifacts from partially succeeded builds.
 9639			"allowPartiallySucceededBuilds"?: bool
 9640
 9641			// Download artifacts from failed builds.
 9642			"allowFailedBuilds"?: bool
 9643
 9644			// Artifact name
 9645			"artifactName"?: string
 9646
 9647			// Matching patterns
 9648			"itemPattern"?: string
 9649
 9650			// Destination directory
 9651			"targetPath"?: string
 9652		})
 9653		...
 9654	}, {
 9655		// Download pipeline artifact
 9656		//
 9657		// Download a named artifact from a pipeline to a local path
 9658		"task"!: null | bool | number | =~"^DownloadPipelineArtifact@1$" | [...] | {
 9659			...
 9660		}
 9661
 9662		// Download pipeline artifact inputs
 9663		"inputs"?: null | bool | number | string | [...] | close({
 9664			// Download artifacts produced by
 9665			"buildType"?: "current" | "specific"
 9666
 9667			// Project
 9668			"project"?: string
 9669
 9670			// Build pipeline
 9671			"pipeline"?: string
 9672
 9673			// When appropriate, download artifacts from the triggering build.
 9674			"specificBuildWithTriggering"?: bool
 9675
 9676			// Build version to download
 9677			"buildVersionToDownload"?: "latest" | "latestFromBranch" | "specific"
 9678
 9679			// Branch name
 9680			"branchName"?: string
 9681
 9682			// Build
 9683			"pipelineId"?: string
 9684
 9685			// Build Tags
 9686			"tags"?: string
 9687
 9688			// Artifact name
 9689			"artifactName"?: string
 9690
 9691			// Matching pattern
 9692			"itemPattern"?: string
 9693
 9694			// Destination directory
 9695			"targetPath"?: string
 9696		})
 9697		...
 9698	}, {
 9699		// Use Python version
 9700		//
 9701		// Use the specified version of Python from the tool cache,
 9702		// optionally adding it to the PATH
 9703		"task"!: null | bool | number | =~"^UsePythonVersion@0$" | [...] | {
 9704			...
 9705		}
 9706
 9707		// Use Python version inputs
 9708		"inputs"?: null | bool | number | string | [...] | close({
 9709			// Version spec
 9710			"versionSpec"?: string
 9711
 9712			// Disable downloading releases from the GitHub registry
 9713			"disableDownloadFromRegistry"?: bool
 9714
 9715			// Allow downloading unstable releases
 9716			"allowUnstable"?: bool
 9717
 9718			// GitHub token for GitHub Actions python registry
 9719			"githubToken"?: string
 9720
 9721			// Add to PATH
 9722			"addToPath"?: bool
 9723
 9724			// Architecture
 9725			"architecture"?: "x86" | "x64"
 9726		})
 9727		...
 9728	}, {
 9729		// Service Fabric PowerShell
 9730		//
 9731		// Run a PowerShell script in the context of an Azure Service
 9732		// Fabric cluster connection
 9733		"task"!: null | bool | number | =~"^ServiceFabricPowerShell@1$" | [...] | {
 9734			...
 9735		}
 9736
 9737		// Service Fabric PowerShell inputs
 9738		"inputs"!: null | bool | number | string | [...] | close({
 9739			// Cluster Service Connection
 9740			"clusterConnection"!: string
 9741
 9742			// Script Type
 9743			"ScriptType"?: "FilePath" | "InlineScript"
 9744
 9745			// Script Path
 9746			"ScriptPath"?: string
 9747
 9748			// Inline Script
 9749			"Inline"?: string
 9750
 9751			// Script Arguments
 9752			"ScriptArguments"?: string
 9753		})
 9754		...
 9755	}, {
 9756		// Visual Studio Test
 9757		//
 9758		// Run unit and functional tests (Selenium, Appium, Coded UI test,
 9759		// etc.) using the Visual Studio Test (VsTest) runner. Test
 9760		// frameworks that have a Visual Studio test adapter such as
 9761		// MsTest, xUnit, NUnit, Chutzpah (for JavaScript tests using
 9762		// QUnit, Mocha and Jasmine), etc. can be run. Tests can be
 9763		// distributed on multiple agents using this task (version 2 and
 9764		// later).
 9765		"task"!: null | bool | number | =~"^VSTest@2$" | [...] | {
 9766			...
 9767		}
 9768
 9769		// Visual Studio Test inputs
 9770		"inputs"?: null | bool | number | string | [...] | close({
 9771			// Select tests using
 9772			"testSelector"?: "testAssemblies" | "testPlan" | "testRun"
 9773
 9774			// Test files
 9775			"testAssemblyVer2"?: string
 9776
 9777			// Test plan
 9778			"testPlan"?: string
 9779
 9780			// Test suite
 9781			"testSuite"?: string
 9782
 9783			// Test configuration
 9784			"testConfiguration"?: string
 9785
 9786			// Test Run
 9787			"tcmTestRun"?: string
 9788
 9789			// Search folder
 9790			"searchFolder"?: string
 9791
 9792			// Test results folder
 9793			"resultsFolder"?: string
 9794
 9795			// Test filter criteria
 9796			"testFiltercriteria"?: string
 9797
 9798			// Run only impacted tests
 9799			"runOnlyImpactedTests"?: bool
 9800
 9801			// Number of builds after which all tests should be run
 9802			"runAllTestsAfterXBuilds"?: string
 9803
 9804			// Test mix contains UI tests
 9805			"uiTests"?: bool
 9806
 9807			// Select test platform using
 9808			"vstestLocationMethod"?: "version" | "location"
 9809
 9810			// Test platform version
 9811			"vsTestVersion"?: "latest" | "17.0" | "16.0" | "15.0" | "14.0" | "toolsInstaller"
 9812
 9813			// Path to vstest.console.exe
 9814			"vstestLocation"?: string
 9815
 9816			// Settings file
 9817			"runSettingsFile"?: string
 9818
 9819			// Override test run parameters
 9820			"overrideTestrunParameters"?: string
 9821
 9822			// Path to custom test adapters
 9823			"pathtoCustomTestAdapters"?: string
 9824
 9825			// Run tests in parallel on multi-core machines
 9826			"runInParallel"?: bool
 9827
 9828			// Run tests in isolation
 9829			"runTestsInIsolation"?: bool
 9830
 9831			// Code coverage enabled
 9832			"codeCoverageEnabled"?: bool
 9833
 9834			// Other console options
 9835			"otherConsoleOptions"?: string
 9836
 9837			// Batch tests
 9838			"distributionBatchType"?: "basedOnTestCases" | "basedOnExecutionTime" | "basedOnAssembly"
 9839
 9840			// Batch options
 9841			"batchingBasedOnAgentsOption"?: "autoBatchSize" | "customBatchSize"
 9842
 9843			// Number of tests per batch
 9844			"customBatchSizeValue"?: string
 9845
 9846			// Batch options
 9847			"batchingBasedOnExecutionTimeOption"?: "autoBatchSize" | "customTimeBatchSize"
 9848
 9849			// Running time (sec) per batch
 9850			"customRunTimePerBatchValue"?: string
 9851
 9852			// Replicate tests instead of distributing when multiple agents
 9853			// are used in the job
 9854			"dontDistribute"?: bool
 9855
 9856			// Test run title
 9857			"testRunTitle"?: string
 9858
 9859			// Build platform
 9860			"platform"?: string
 9861
 9862			// Build configuration
 9863			"configuration"?: string
 9864
 9865			// Upload test attachments
 9866			"publishRunAttachments"?: bool
 9867
 9868			// Fail the task if a minimum number of tests are not run.
 9869			"failOnMinTestsNotRun"?: bool
 9870
 9871			// Minimum # of tests
 9872			"minimumExpectedTests"?: string
 9873
 9874			// Collect advanced diagnostics in case of catastrophic failures
 9875			"diagnosticsEnabled"?: bool
 9876
 9877			// Collect process dump and attach to test run report
 9878			"collectDumpOn"?: "onAbortOnly" | "always" | "never"
 9879
 9880			// Rerun failed tests
 9881			"rerunFailedTests"?: bool
 9882
 9883			// Do not rerun if test failures exceed specified threshold
 9884			"rerunType"?: "basedOnTestFailurePercentage" | "basedOnTestFailureCount"
 9885
 9886			// % failure
 9887			"rerunFailedThreshold"?: string
 9888
 9889			// # of failed tests
 9890			"rerunFailedTestCasesMaxLimit"?: string
 9891
 9892			// Maximum # of attempts
 9893			"rerunMaxAttempts"?: string
 9894		})
 9895		...
 9896	}, {
 9897		// Visual Studio Test
 9898		//
 9899		// Run unit and functional tests (Selenium, Appium, Coded UI test,
 9900		// etc.) using the Visual Studio Test (VsTest) runner. Test
 9901		// frameworks that have a Visual Studio test adapter such as
 9902		// MsTest, xUnit, NUnit, Chutzpah (for JavaScript tests using
 9903		// QUnit, Mocha and Jasmine), etc. can be run. Tests can be
 9904		// distributed on multiple agents using this task (version 2 and
 9905		// later).
 9906		"task"!: null | bool | number | =~"^VSTest@3$" | [...] | {
 9907			...
 9908		}
 9909
 9910		// Visual Studio Test inputs
 9911		"inputs"?: null | bool | number | string | [...] | close({
 9912			// Azure Resource Manager connection
 9913			"azureSubscription"?: string
 9914
 9915			// Select tests using
 9916			"testSelector"?: "testAssemblies" | "testPlan" | "testRun"
 9917
 9918			// Test files
 9919			"testAssemblyVer2"?: string
 9920
 9921			// Test plan
 9922			"testPlan"?: string
 9923
 9924			// Test suite
 9925			"testSuite"?: string
 9926
 9927			// Test configuration
 9928			"testConfiguration"?: string
 9929
 9930			// Test Run
 9931			"tcmTestRun"?: string
 9932
 9933			// Search folder
 9934			"searchFolder"?: string
 9935
 9936			// Test results folder
 9937			"resultsFolder"?: string
 9938
 9939			// Test filter criteria
 9940			"testFiltercriteria"?: string
 9941
 9942			// Run only impacted tests
 9943			"runOnlyImpactedTests"?: bool
 9944
 9945			// Number of builds after which all tests should be run
 9946			"runAllTestsAfterXBuilds"?: string
 9947
 9948			// Test mix contains UI tests
 9949			"uiTests"?: bool
 9950
 9951			// Select test platform using
 9952			"vstestLocationMethod"?: "version" | "location"
 9953
 9954			// Test platform version
 9955			"vsTestVersion"?: "latest" | "17.0" | "16.0" | "15.0" | "14.0" | "toolsInstaller"
 9956
 9957			// Path to vstest.console.exe
 9958			"vstestLocation"?: string
 9959
 9960			// Settings file
 9961			"runSettingsFile"?: string
 9962
 9963			// Override test run parameters
 9964			"overrideTestrunParameters"?: string
 9965
 9966			// Path to custom test adapters
 9967			"pathtoCustomTestAdapters"?: string
 9968
 9969			// Run tests in parallel on multi-core machines
 9970			"runInParallel"?: bool
 9971
 9972			// Run tests in isolation
 9973			"runTestsInIsolation"?: bool
 9974
 9975			// Code coverage enabled
 9976			"codeCoverageEnabled"?: bool
 9977
 9978			// Other console options
 9979			"otherConsoleOptions"?: string
 9980
 9981			// Batch tests
 9982			"distributionBatchType"?: "basedOnTestCases" | "basedOnExecutionTime" | "basedOnAssembly"
 9983
 9984			// Batch options
 9985			"batchingBasedOnAgentsOption"?: "autoBatchSize" | "customBatchSize"
 9986
 9987			// Number of tests per batch
 9988			"customBatchSizeValue"?: string
 9989
 9990			// Batch options
 9991			"batchingBasedOnExecutionTimeOption"?: "autoBatchSize" | "customTimeBatchSize"
 9992
 9993			// Running time (sec) per batch
 9994			"customRunTimePerBatchValue"?: string
 9995
 9996			// Replicate tests instead of distributing when multiple agents
 9997			// are used in the job
 9998			"dontDistribute"?: bool
 9999
10000			// Test run title
10001			"testRunTitle"?: string
10002
10003			// Build platform
10004			"platform"?: string
10005
10006			// Build configuration
10007			"configuration"?: string
10008
10009			// Custom Logger Configuration
10010			"customLoggerConfig"?: string
10011
10012			// Upload test attachments
10013			"publishRunAttachments"?: bool
10014
10015			// Disable publishing test results
10016			"donotPublishTestResults"?: bool
10017
10018			// Fail the task if a minimum number of tests are not run.
10019			"failOnMinTestsNotRun"?: bool
10020
10021			// Minimum # of tests
10022			"minimumExpectedTests"?: string
10023
10024			// Collect advanced diagnostics in case of catastrophic failures
10025			"diagnosticsEnabled"?: bool
10026
10027			// Collect process dump and attach to test run report
10028			"collectDumpOn"?: "onAbortOnly" | "always" | "never"
10029
10030			// Rerun failed tests
10031			"rerunFailedTests"?: bool
10032
10033			// Do not rerun if test failures exceed specified threshold
10034			"rerunType"?: "basedOnTestFailurePercentage" | "basedOnTestFailureCount"
10035
10036			// % failure
10037			"rerunFailedThreshold"?: string
10038
10039			// # of failed tests
10040			"rerunFailedTestCasesMaxLimit"?: string
10041
10042			// Maximum # of attempts
10043			"rerunMaxAttempts"?: string
10044		})
10045		...
10046	}, {
10047		// Visual Studio Test
10048		//
10049		// Run tests with Visual Studio test runner
10050		"task"!: null | bool | number | =~"^VSTest@1$" | [...] | {
10051			...
10052		}
10053
10054		// Visual Studio Test inputs
10055		"inputs"?: null | bool | number | string | [...] | close({
10056			// Test Assembly
10057			"testAssembly"?: string
10058
10059			// Test Filter criteria
10060			"testFiltercriteria"?: string
10061
10062			// Run Settings File
10063			"runSettingsFile"?: string
10064
10065			// Override TestRun Parameters
10066			"overrideTestrunParameters"?: string
10067
10068			// Code Coverage Enabled
10069			"codeCoverageEnabled"?: bool
10070
10071			// Run In Parallel
10072			"runInParallel"?: bool
10073
10074			// VSTest
10075			"vstestLocationMethod"?: "version" | "location"
10076
10077			// VSTest version
10078			"vsTestVersion"?: "latest" | "14.0" | "12.0"
10079
10080			// Path to vstest.console.exe
10081			"vstestLocation"?: string
10082
10083			// Path to Custom Test Adapters
10084			"pathtoCustomTestAdapters"?: string
10085
10086			// Other console options
10087			"otherConsoleOptions"?: string
10088
10089			// Test Run Title
10090			"testRunTitle"?: string
10091
10092			// Platform
10093			"platform"?: string
10094
10095			// Configuration
10096			"configuration"?: string
10097
10098			// Upload Test Attachments
10099			"publishRunAttachments"?: bool
10100		})
10101		...
10102	}, {
10103		// Manual validation
10104		//
10105		// Pause a pipeline run to wait for manual interaction. Works only
10106		// with YAML pipelines.
10107		"task"!: null | bool | number | =~"^ManualValidation@1$" | [...] | {
10108			...
10109		}
10110
10111		// Manual validation inputs
10112		"inputs"!: null | bool | number | string | [...] | close({
10113			// Notify users
10114			"notifyUsers"!: string
10115
10116			// Approvers
10117			"approvers"?: string
10118
10119			// Allow approvers to approve their own run
10120			"allowApproversToApproveTheirOwnRuns"?: bool
10121
10122			// Instructions
10123			"instructions"?: string
10124
10125			// On timeout
10126			"onTimeout"?: "reject" | "resume"
10127		})
10128		...
10129	}, {
10130		// Manual validation
10131		//
10132		// Pause a pipeline run to wait for manual interaction. Works only
10133		// with YAML pipelines.
10134		"task"!: null | bool | number | =~"^ManualValidation@0$" | [...] | {
10135			...
10136		}
10137
10138		// Manual validation inputs
10139		"inputs"!: null | bool | number | string | [...] | close({
10140			// Notify users
10141			"notifyUsers"!: string
10142
10143			// Approvers
10144			"approvers"?: string
10145
10146			// Allow approvers to approve their own run
10147			"allowApproversToApproveTheirOwnRuns"?: bool
10148
10149			// Instructions
10150			"instructions"?: string
10151
10152			// On timeout
10153			"onTimeout"?: "reject" | "resume"
10154		})
10155		...
10156	}, {
10157		// Ant
10158		//
10159		// Build with Apache Ant
10160		"task"!: null | bool | number | =~"^Ant@1$" | [...] | {
10161			...
10162		}
10163
10164		// Ant inputs
10165		"inputs"?: null | bool | number | string | [...] | close({
10166			// Ant build file
10167			"buildFile"?: string
10168
10169			// Options
10170			"options"?: string
10171
10172			// Target(s)
10173			"targets"?: string
10174
10175			// Publish to Azure Pipelines
10176			"publishJUnitResults"?: bool
10177
10178			// Test results files
10179			"testResultsFiles"?: string
10180
10181			// Test run title
10182			"testRunTitle"?: string
10183
10184			// Code coverage tool
10185			"codeCoverageToolOptions"?: "None" | "Cobertura" | "JaCoCo"
10186
10187			// Class files directories
10188			"codeCoverageClassFilesDirectories"?: string
10189
10190			// Class inclusion/exclusion filters
10191			"codeCoverageClassFilter"?: string
10192
10193			// Source files directories
10194			"codeCoverageSourceDirectories"?: string
10195
10196			// Fail when code coverage results are missing
10197			"codeCoverageFailIfEmpty"?: bool
10198
10199			// Set ANT_HOME path
10200			"antHomeDirectory"?: string
10201
10202			// Set JAVA_HOME by
10203			"javaHomeOption"?: "JDKVersion" | "Path"
10204
10205			// JDK version
10206			"jdkVersionOption"?: "default" | "1.11" | "1.10" | "1.9" | "1.8" | "1.7" | "1.6"
10207
10208			// JDK path
10209			"jdkUserInputDirectory"?: string
10210
10211			// JDK architecture
10212			"jdkArchitectureOption"?: "x86" | "x64"
10213		})
10214		...
10215	}, {
10216		// Visual Studio test agent deployment
10217		//
10218		// Deprecated: Instead, use the 'Visual Studio Test' task to run
10219		// unit and functional tests
10220		"task"!: null | bool | number | =~"^DeployVisualStudioTestAgent@2$" | [...] | {
10221			...
10222		}
10223
10224		// Visual Studio test agent deployment inputs
10225		"inputs"!: null | bool | number | string | [...] | close({
10226			// Machines
10227			"testMachines"!: string
10228
10229			// Admin login
10230			"adminUserName"!: string
10231
10232			// Admin password
10233			"adminPassword"!: string
10234
10235			// Protocol
10236			"winRmProtocol"?: "Http" | "Https"
10237
10238			// Test Certificate
10239			"testCertificate"?: bool
10240
10241			// Username
10242			"machineUserName"!: string
10243
10244			// Password
10245			"machinePassword"!: string
10246
10247			// Run UI tests
10248			"runAsProcess"?: bool
10249
10250			// Enable data collection only
10251			"isDataCollectionOnly"?: bool
10252
10253			// Test agent version
10254			"testPlatform"?: "15.0" | "14.0"
10255
10256			// Test agent location
10257			"agentLocation"?: string
10258
10259			// Update test agent
10260			"updateTestAgent"?: bool
10261		})
10262		...
10263	}, {
10264		// Visual Studio Test Agent Deployment
10265		//
10266		// Deploy and configure Test Agent to run tests on a set of
10267		// machines
10268		"task"!: null | bool | number | =~"^DeployVisualStudioTestAgent@1$" | [...] | {
10269			...
10270		}
10271
10272		// Visual Studio Test Agent Deployment inputs
10273		"inputs"!: null | bool | number | string | [...] | close({
10274			// Machines
10275			"testMachineGroup"!: string
10276
10277			// Admin Login
10278			"adminUserName"?: string
10279
10280			// Admin Password
10281			"adminPassword"?: string
10282
10283			// Protocol
10284			"winRmProtocol"?: "Http" | "Https"
10285
10286			// Test Certificate
10287			"testCertificate"?: bool
10288
10289			// Select Machines By
10290			"resourceFilteringMethod"?: "machineNames" | "tags"
10291
10292			// Filter Criteria
10293			"testMachines"?: string
10294
10295			// Username
10296			"machineUserName"!: string
10297
10298			// Password
10299			"machinePassword"!: string
10300
10301			// Interactive Process
10302			"runAsProcess"?: bool
10303
10304			// Test Agent Location
10305			"agentLocation"?: string
10306
10307			// Update Test Agent
10308			"updateTestAgent"?: bool
10309
10310			// Enable Data Collection Only
10311			"isDataCollectionOnly"?: bool
10312		})
10313		...
10314	}, {
10315		// Conda environment
10316		//
10317		// Create and activate a Conda environment
10318		"task"!: null | bool | number | =~"^CondaEnvironment@0$" | [...] | {
10319			...
10320		}
10321
10322		// Conda environment inputs
10323		"inputs"!: null | bool | number | string | [...] | close({
10324			// Environment name
10325			"environmentName"!: string
10326
10327			// Package specs
10328			"packageSpecs"?: string
10329
10330			// Update to the latest Conda
10331			"updateConda"?: bool
10332
10333			// Environment creation options
10334			"createOptions"?: string
10335
10336			// Clean the environment
10337			"cleanEnvironment"?: bool
10338		})
10339		...
10340	}, {
10341		// Conda environment
10342		//
10343		// This task is deprecated. Use `conda` directly in script to work
10344		// with Anaconda environments.
10345		"task"!: null | bool | number | =~"^CondaEnvironment@1$" | [...] | {
10346			...
10347		}
10348
10349		// Conda environment inputs
10350		"inputs"?: null | bool | number | string | [...] | close({
10351			// Create a custom environment
10352			"createCustomEnvironment"?: bool
10353
10354			// Environment name
10355			"environmentName"?: string
10356
10357			// Package specs
10358			"packageSpecs"?: string
10359
10360			// Update to the latest Conda
10361			"updateConda"?: bool
10362
10363			// Other options for `conda install`
10364			"installOptions"?: string
10365
10366			// Other options for `conda create`
10367			"createOptions"?: string
10368
10369			// Clean the environment
10370			"cleanEnvironment"?: bool
10371		})
10372		...
10373	}, {
10374		// Batch script
10375		//
10376		// Run a Windows command or batch script and optionally allow it
10377		// to change the environment
10378		"task"!: null | bool | number | =~"^BatchScript@1$" | [...] | {
10379			...
10380		}
10381
10382		// Batch script inputs
10383		"inputs"!: null | bool | number | string | [...] | close({
10384			// Path
10385			"filename"!: string
10386
10387			// Arguments
10388			"arguments"?: string
10389
10390			// Modify Environment
10391			"modifyEnvironment"?: bool
10392
10393			// Working folder
10394			"workingFolder"?: string
10395
10396			// Fail on Standard Error
10397			"failOnStandardError"?: bool
10398		})
10399		...
10400	}, {
10401		// Download Github Npm Package
10402		//
10403		// Install npm packages from GitHub.
10404		"task"!: null | bool | number | =~"^DownloadGithubNpmPackage@1$" | [...] | {
10405			...
10406		}
10407
10408		// Download Github Npm Package inputs
10409		"inputs"!: null | bool | number | string | [...] | close({
10410			// Package Name
10411			"packageName"!: string
10412
10413			// Package Version
10414			"version"!: string
10415
10416			// Credentials for registry from GitHub
10417			"externalRegistryCredentials"!: string
10418
10419			// Destination directory
10420			"installDirectory"?: string
10421		})
10422		...
10423	}, {
10424		// Visual Studio build
10425		//
10426		// Build with MSBuild and set the Visual Studio version property
10427		"task"!: null | bool | number | =~"^VSBuild@1$" | [...] | {
10428			...
10429		}
10430
10431		// Visual Studio build inputs
10432		"inputs"?: null | bool | number | string | [...] | close({
10433			// Solution
10434			"solution"?: string
10435
10436			// Visual Studio Version
10437			"vsVersion"?: "latest" | "17.0" | "16.0" | "15.0" | "14.0" | "12.0" | "11.0"
10438
10439			// MSBuild Arguments
10440			"msbuildArgs"?: string
10441
10442			// Platform
10443			"platform"?: string
10444
10445			// Configuration
10446			"configuration"?: string
10447
10448			// Clean
10449			"clean"?: bool
10450
10451			// Build in Parallel
10452			"maximumCpuCount"?: bool
10453
10454			// Restore NuGet Packages
10455			"restoreNugetPackages"?: bool
10456
10457			// MSBuild Architecture
10458			"msbuildArchitecture"?: "x86" | "x64"
10459
10460			// Record Project Details
10461			"logProjectEvents"?: bool
10462
10463			// Create Log File
10464			"createLogFile"?: bool
10465
10466			// Log File Verbosity
10467			"logFileVerbosity"?: "quiet" | "minimal" | "normal" | "detailed" | "diagnostic"
10468
10469			// Enable Default Logger
10470			"enableDefaultLogger"?: bool
10471
10472			// Custom Version
10473			"customVersion"?: string
10474		})
10475		...
10476	}, {
10477		// Azure Key Vault
10478		//
10479		// Download Azure Key Vault secrets
10480		"task"!: null | bool | number | =~"^AzureKeyVault@1$" | [...] | {
10481			...
10482		}
10483
10484		// Azure Key Vault inputs
10485		"inputs"!: null | bool | number | string | [...] | close({
10486			// Azure subscription
10487			"azureSubscription"!: string
10488
10489			// Key vault
10490			"KeyVaultName"!: string
10491
10492			// Secrets filter
10493			"SecretsFilter"?: string
10494
10495			// Make secrets available to whole job
10496			"RunAsPreJob"?: bool
10497		})
10498		...
10499	}, {
10500		// Azure Key Vault
10501		//
10502		// Download Azure Key Vault secrets
10503		"task"!: null | bool | number | =~"^AzureKeyVault@2$" | [...] | {
10504			...
10505		}
10506
10507		// Azure Key Vault inputs
10508		"inputs"!: null | bool | number | string | [...] | close({
10509			// Azure subscription
10510			"azureSubscription"!: string
10511
10512			// Key vault
10513			"KeyVaultName"!: string
10514
10515			// Secrets filter
10516			"SecretsFilter"?: string
10517
10518			// Make secrets available to whole job
10519			"RunAsPreJob"?: bool
10520		})
10521		...
10522	}, {
10523		// Use .NET Core
10524		//
10525		// Acquires a specific version of the .NET Core SDK from the
10526		// internet or the local cache and adds it to the PATH. Use this
10527		// task to change the version of .NET Core used in subsequent
10528		// tasks. Additionally provides proxy support.
10529		"task"!: null | bool | number | =~"^UseDotNet@2$" | [...] | {
10530			...
10531		}
10532
10533		// Use .NET Core inputs
10534		"inputs"?: null | bool | number | string | [...] | close({
10535			// Package to install
10536			"packageType"?: "runtime" | "sdk"
10537
10538			// Use global json
10539			"useGlobalJson"?: bool
10540
10541			// Working Directory
10542			"workingDirectory"?: string
10543
10544			// Version
10545			"version"?: string
10546
10547			// Compatible Visual Studio version
10548			"vsVersion"?: string
10549
10550			// Include Preview Versions
10551			"includePreviewVersions"?: bool
10552
10553			// Path To Install .Net Core
10554			"installationPath"?: string
10555
10556			// Perform Multi Level Lookup
10557			"performMultiLevelLookup"?: bool
10558
10559			// Set timeout for package download request
10560			"requestTimeout"?: int
10561		})
10562		...
10563	}, {
10564		// .NET Core SDK/runtime installer
10565		//
10566		// Acquire a specific version of the .NET Core SDK from the
10567		// internet or local cache and add it to the PATH
10568		"task"!: null | bool | number | =~"^DotNetCoreInstaller@0$" | [...] | {
10569			...
10570		}
10571
10572		// .NET Core SDK/runtime installer inputs
10573		"inputs"?: null | bool | number | string | [...] | close({
10574			// Package to install
10575			"packageType"?: "runtime" | "sdk"
10576
10577			// Version
10578			"version"?: string
10579		})
10580		...
10581	}, {
10582		// .NET Core sdk/runtime installer
10583		//
10584		// Acquire a specific version of the .NET Core SDK from the
10585		// internet or local cache and add it to the PATH
10586		"task"!: null | bool | number | =~"^DotNetCoreInstaller@1$" | [...] | {
10587			...
10588		}
10589
10590		// .NET Core sdk/runtime installer inputs
10591		"inputs"?: null | bool | number | string | [...] | close({
10592			// Package to install
10593			"packageType"?: "runtime" | "sdk"
10594
10595			// Version
10596			"version"?: string
10597
10598			// Include Preview Versions
10599			"includePreviewVersions"?: bool
10600
10601			// Path To Install .Net Core
10602			"installationPath"?: string
10603
10604			// Perform Multi Level Lookup
10605			"performMultiLevelLookup"?: bool
10606		})
10607		...
10608	}, {
10609		// Use .NET Core
10610		//
10611		// Acquires a specific version of the .NET Core SDK from the
10612		// internet or the local cache and adds it to the PATH. Use this
10613		// task to change the version of .NET Core used in subsequent
10614		// tasks. Additionally provides proxy support.
10615		"task"!: null | bool | number | =~"^UseDotNet@2$" | [...] | {
10616			...
10617		}
10618
10619		// Use .NET Core inputs
10620		"inputs"?: null | bool | number | string | [...] | close({
10621			// Package to install
10622			"packageType"?: "runtime" | "sdk"
10623
10624			// Use global json
10625			"useGlobalJson"?: bool
10626
10627			// Working Directory
10628			"workingDirectory"?: string
10629
10630			// Version
10631			"version"?: string
10632
10633			// Compatible Visual Studio version
10634			"vsVersion"?: string
10635
10636			// Include Preview Versions
10637			"includePreviewVersions"?: bool
10638
10639			// Path To Install .Net Core
10640			"installationPath"?: string
10641
10642			// Perform Multi Level Lookup
10643			"performMultiLevelLookup"?: bool
10644
10645			// Set timeout for package download request
10646			"requestTimeout"?: int
10647		})
10648		...
10649	}, {
10650		// Azure App Configuration Import
10651		//
10652		// Import settings from configuration files into Azure App
10653		// Configuration through build or deployment pipelines
10654		"task"!: null | bool | number | =~"^AzureAppConfigurationImport@10$" | [...] | {
10655			...
10656		}
10657
10658		// Azure App Configuration Import inputs
10659		"inputs"!: null | bool | number | string | [...] | close({
10660			// Azure subscription
10661			"azureSubscription"!: string
10662
10663			// App Configuration Endpoint
10664			"AppConfigurationEndpoint"!: string
10665
10666			// Configuration File Path
10667			"ConfigurationFile"!: string
10668
10669			// Use the file path extension to determine the file format
10670			"UseFilePathExtension"?: bool
10671
10672			// File Format
10673			"FileFormat"?: "json" | "yaml" | "properties"
10674
10675			// File Content Profile
10676			"FileContentProfile"?: "appconfig/default" | "appconfig/kvset"
10677
10678			// Separator
10679			"Separator"?: "." | "/" | ":" | ";" | "," | "-" | "_" | "__"
10680
10681			// Depth
10682			"Depth"?: string
10683
10684			// Prefix
10685			"Prefix"?: string
10686
10687			// Label
10688			"Label"?: string
10689
10690			// Content Type
10691			"ContentType"?: string
10692
10693			// Tags
10694			"Tags"?: string
10695
10696			// Exclude feature flags
10697			"ExcludeFeatureFlags"?: bool
10698
10699			// Delete key-values that are not included in the configuration
10700			// file
10701			"Strict"?: bool
10702
10703			// Dry run
10704			"DryRun"?: bool
10705
10706			// Import Mode
10707			"ImportMode"?: "All" | "Ignore-Match"
10708		})
10709		...
10710	}, {
10711		// Azure App Service manage
10712		//
10713		// Start, stop, restart, slot swap, slot delete, install site
10714		// extensions or enable continuous monitoring for an Azure App
10715		// Service
10716		"task"!: null | bool | number | =~"^AzureAppServiceManage@0$" | [...] | {
10717			...
10718		}
10719
10720		// Azure App Service manage inputs
10721		"inputs"!: null | bool | number | string | [...] | close({
10722			// Azure subscription
10723			"azureSubscription"!: string
10724
10725			// Action
10726			"Action"?: "Swap Slots" | "Start Azure App Service" | "Stop Azure App Service" | "Restart Azure App Service" | "Start Swap With Preview" | "Complete Swap" | "Cancel Swap" | "Delete Slot" | "Install Extensions" | "Enable Continuous Monitoring" | "Start all continuous webjobs" | "Stop all continuous webjobs"
10727
10728			// App Service name
10729			"WebAppName"!: string
10730
10731			// Specify Slot or App Service Environment
10732			"SpecifySlotOrASE"?: bool
10733
10734			// Resource group
10735			"ResourceGroupName"?: string
10736
10737			// Source Slot
10738			"SourceSlot"?: string
10739
10740			// Swap with Production
10741			"SwapWithProduction"?: bool
10742
10743			// Target Slot
10744			"TargetSlot"?: string
10745
10746			// Preserve Vnet
10747			"PreserveVnet"?: bool
10748
10749			// Slot
10750			"Slot"?: string
10751
10752			// Install Extensions
10753			"ExtensionsList"?: string
10754
10755			// Output variable
10756			"OutputVariable"?: string
10757
10758			// Resource Group name for Application Insights
10759			"AppInsightsResourceGroupName"?: string
10760
10761			// Application Insights resource name
10762			"ApplicationInsightsResourceName"?: string
10763
10764			// Application Insights web test name
10765			"ApplicationInsightsWebTestName"?: string
10766		})
10767		...
10768	}, {
10769		// Kubelogin tool installer
10770		//
10771		// Helps to install kubelogin
10772		"task"!: null | bool | number | =~"^KubeloginInstaller@0$" | [...] | {
10773			...
10774		}
10775
10776		// Kubelogin tool installer inputs
10777		"inputs"?: null | bool | number | string | [...] | close({
10778			// kubelogin version
10779			"kubeloginVersion"?: string
10780
10781			// GitHub Connection
10782			"gitHubConnection"?: string
10783		})
10784		...
10785	}, {
10786		// Install Azure Func Core Tools
10787		//
10788		// Install Azure Func Core Tools
10789		"task"!: null | bool | number | =~"^FuncToolsInstaller@0$" | [...] | {
10790			...
10791		}
10792
10793		// Install Azure Func Core Tools inputs
10794		"inputs"?: null | bool | number | string | [...] | close({
10795			// Version
10796			"version"?: string
10797		})
10798		...
10799	}, {
10800		// File transform
10801		//
10802		// Replace tokens with variable values in XML or JSON
10803		// configuration files
10804		"task"!: null | bool | number | =~"^FileTransform@2$" | [...] | {
10805			...
10806		}
10807
10808		// File transform inputs
10809		"inputs"?: null | bool | number | string | [...] | close({
10810			// Package or folder
10811			"folderPath"?: string
10812
10813			// XML transformation
10814			"enableXmlTransform"?: bool
10815
10816			// XML Transformation rules
10817			"xmlTransformationRules"?: string
10818
10819			// JSON target files
10820			"jsonTargetFiles"?: string
10821
10822			// XML target files
10823			"xmlTargetFiles"?: string
10824
10825			// Error on empty files and invalid substitution.
10826			"errorOnInvalidSubstitution"?: bool
10827		})
10828		...
10829	}, {
10830		// File transform
10831		//
10832		// Replace tokens with variable values in XML or JSON
10833		// configuration files
10834		"task"!: null | bool | number | =~"^FileTransform@1$" | [...] | {
10835			...
10836		}
10837
10838		// File transform inputs
10839		"inputs"?: null | bool | number | string | [...] | close({
10840			// Package or folder
10841			"folderPath"?: string
10842
10843			// XML transformation
10844			"enableXmlTransform"?: bool
10845
10846			// Transformation rules
10847			"xmlTransformationRules"?: string
10848
10849			// File format
10850			"fileType"?: "xml" | "json"
10851
10852			// Target files
10853			"targetFiles"?: string
10854		})
10855		...
10856	}, {
10857		// Extract files
10858		//
10859		// Extract a variety of archive and compression files such as .7z,
10860		// .rar, .tar.gz, and .zip
10861		"task"!: null | bool | number | =~"^ExtractFiles@1$" | [...] | {
10862			...
10863		}
10864
10865		// Extract files inputs
10866		"inputs"!: null | bool | number | string | [...] | close({
10867			// Archive file patterns
10868			"archiveFilePatterns"?: string
10869
10870			// Destination folder
10871			"destinationFolder"!: string
10872
10873			// Clean destination folder before extracting
10874			"cleanDestinationFolder"?: bool
10875
10876			// Overwrite existing files
10877			"overwriteExistingFiles"?: bool
10878
10879			// Path to 7z utility
10880			"pathToSevenZipTool"?: string
10881		})
10882		...
10883	}, {
10884		// Xamarin.Android
10885		//
10886		// Build an Android app with Xamarin
10887		"task"!: null | bool | number | =~"^XamarinAndroid@1$" | [...] | {
10888			...
10889		}
10890
10891		// Xamarin.Android inputs
10892		"inputs"?: null | bool | number | string | [...] | close({
10893			// Project
10894			"projectFile"?: string
10895
10896			// Target
10897			"target"?: string
10898
10899			// Output directory
10900			"outputDirectory"?: string
10901
10902			// Configuration
10903			"configuration"?: string
10904
10905			// Create app package
10906			"createAppPackage"?: bool
10907
10908			// Clean
10909			"clean"?: bool
10910
10911			// MSBuild
10912			"msbuildLocationOption"?: "version" | "location"
10913
10914			// MSBuild version
10915			"msbuildVersionOption"?: "latest" | "17.0" | "16.0" | "15.0" | "14.0" | "12.0" | "4.0"
10916
10917			// MSBuild location
10918			"msbuildFile"?: string
10919
10920			// MSBuild architecture
10921			"msbuildArchitectureOption"?: "x86" | "x64"
10922
10923			// Additional arguments
10924			"msbuildArguments"?: string
10925
10926			// Select JDK to use for the build
10927			"jdkOption"?: "JDKVersion" | "Path"
10928
10929			// JDK version
10930			"jdkVersionOption"?: "default" | "1.11" | "1.10" | "1.9" | "1.8" | "1.7" | "1.6"
10931
10932			// JDK path
10933			"jdkDirectory"?: string
10934
10935			// JDK architecture
10936			"jdkArchitectureOption"?: "x86" | "x64"
10937		})
10938		...
10939	}, {
10940		// Copy and Publish Build Artifacts
10941		//
10942		// [DEPRECATED] Use the Copy Files task and the Publish Build
10943		// Artifacts task instead
10944		"task"!: null | bool | number | =~"^CopyPublishBuildArtifacts@1$" | [...] | {
10945			...
10946		}
10947
10948		// Copy and Publish Build Artifacts inputs
10949		"inputs"!: null | bool | number | string | [...] | close({
10950			// Copy Root
10951			"CopyRoot"?: string
10952
10953			// Contents
10954			"Contents"!: string
10955
10956			// Artifact Name
10957			"ArtifactName"!: string
10958
10959			// Artifact Type
10960			"ArtifactType"!: "Container" | "FilePath"
10961
10962			// Path
10963			"TargetPath"?: string
10964		})
10965		...
10966	}, {
10967		// Download package
10968		//
10969		// Download a package from a package management feed in Azure
10970		// Artifacts
10971		"task"!: null | bool | number | =~"^DownloadPackage@0$" | [...] | {
10972			...
10973		}
10974
10975		// Download package inputs
10976		"inputs"!: null | bool | number | string | [...] | close({
10977			// Feed
10978			"feed"!: string
10979
10980			// Package
10981			"definition"!: string
10982
10983			// Version
10984			"version"!: string
10985
10986			// Destination directory
10987			"downloadPath"?: string
10988		})
10989		...
10990	}, {
10991		// Download package
10992		//
10993		// Download a package from a package management feed in Azure
10994		// Artifacts
10995		"task"!: null | bool | number | =~"^DownloadPackage@1$" | [...] | {
10996			...
10997		}
10998
10999		// Download package inputs
11000		"inputs"!: null | bool | number | string | [...] | close({
11001			// Package Type
11002			"packageType"?: "maven" | "npm" | "nuget" | "pypi" | "upack" | "cargo"
11003
11004			// Feed
11005			"feed"!: string
11006
11007			// View
11008			"view"?: string
11009
11010			// Package
11011			"definition"!: string
11012
11013			// Version
11014			"version"!: string
11015
11016			// Files
11017			"files"?: string
11018
11019			// Extract package contents
11020			"extract"?: bool
11021
11022			// Destination directory
11023			"downloadPath"?: string
11024		})
11025		...
11026	}, {
11027		// Azure Resource Group Deployment
11028		//
11029		// Deploy, start, stop, delete Azure Resource Groups
11030		"task"!: null | bool | number | =~"^AzureResourceGroupDeployment@1$" | [...] | {
11031			...
11032		}
11033
11034		// Azure Resource Group Deployment inputs
11035		"inputs"?: null | bool | number | string | [...] | close({
11036			// Azure Connection Type
11037			"ConnectedServiceNameSelector"?: "ConnectedServiceName" | "ConnectedServiceNameClassic"
11038
11039			// Azure Subscription
11040			"ConnectedServiceName"?: string
11041
11042			// Azure Classic Subscription
11043			"ConnectedServiceNameClassic"?: string
11044
11045			// Action
11046			"action"?: "Create Or Update Resource Group" | "Select Resource Group" | "Start" | "Stop" | "Restart" | "Delete" | "DeleteRG"
11047
11048			// Action
11049			"actionClassic"?: "Select Resource Group"
11050
11051			// Resource Group
11052			"resourceGroupName"?: string
11053
11054			// Cloud Service
11055			"cloudService"?: string
11056
11057			// Location
11058			"location"?: "Australia East" | "Australia Southeast" | "Brazil South" | "Canada Central" | "Canada East" | "Central India" | "Central US" | "East Asia" | "East US" | "East US 2 " | "Japan East" | "Japan West" | "North Central US" | "North Europe" | "South Central US" | "South India" | "Southeast Asia" | "UK South" | "UK West" | "West Central US" | "West Europe" | "West India" | "West US" | "West US 2"
11059
11060			// Template
11061			"csmFile"?: string
11062
11063			// Template Parameters
11064			"csmParametersFile"?: string
11065
11066			// Override Template Parameters
11067			"overrideParameters"?: string
11068
11069			// Deployment Mode
11070			"deploymentMode"?: "Validation" | "Incremental" | "Complete"
11071
11072			// Enable Deployment Prerequisites
11073			"enableDeploymentPrerequisitesForCreate"?: bool
11074
11075			// Enable Deployment Prerequisites
11076			"enableDeploymentPrerequisitesForSelect"?: bool
11077
11078			// Resource Group
11079			"outputVariable"?: string
11080		})
11081		...
11082	}, {
11083		// Azure resource group deployment
11084		//
11085		// Deploy an Azure Resource Manager (ARM) template to a resource
11086		// group and manage virtual machines
11087		"task"!: null | bool | number | =~"^AzureResourceGroupDeployment@2$" | [...] | {
11088			...
11089		}
11090
11091		// Azure resource group deployment inputs
11092		"inputs"!: null | bool | number | string | [...] | close({
11093			// Azure subscription
11094			"azureSubscription"!: string
11095
11096			// Action
11097			"action"?: "Create Or Update Resource Group" | "Select Resource Group" | "Start" | "Stop" | "StopWithDeallocate" | "Restart" | "Delete" | "DeleteRG"
11098
11099			// Resource group
11100			"resourceGroupName"!: string
11101
11102			// Location
11103			"location"?: string
11104
11105			// Template location
11106			"templateLocation"?: "Linked artifact" | "URL of the file"
11107
11108			// Template link
11109			"csmFileLink"?: string
11110
11111			// Template parameters link
11112			"csmParametersFileLink"?: string
11113
11114			// Template
11115			"csmFile"?: string
11116
11117			// Template parameters
11118			"csmParametersFile"?: string
11119
11120			// Override template parameters
11121			"overrideParameters"?: string
11122
11123			// Deployment mode
11124			"deploymentMode"?: "Incremental" | "Complete" | "Validation"
11125
11126			// Enable prerequisites
11127			"enableDeploymentPrerequisites"?: "None" | "ConfigureVMwithWinRM" | "ConfigureVMWithDGAgent"
11128
11129			// Azure Pipelines service connection
11130			"teamServicesConnection"?: string
11131
11132			// Team project
11133			"teamProject"?: string
11134
11135			// Deployment Group
11136			"deploymentGroupName"?: string
11137
11138			// Copy Azure VM tags to agents
11139			"copyAzureVMTags"?: bool
11140
11141			// Run agent service as a user
11142			"runAgentServiceAsUser"?: bool
11143
11144			// User name
11145			"userName"?: string
11146
11147			// Password
11148			"password"?: string
11149
11150			// VM details for WinRM
11151			"outputVariable"?: string
11152
11153			// Deployment name
11154			"deploymentName"?: string
11155
11156			// Deployment outputs
11157			"deploymentOutputs"?: string
11158
11159			// Access service principal details in override parameters
11160			"addSpnToEnvironment"?: bool
11161
11162			// Use individual output values without JSON.Stringify applied
11163			"useWithoutJSON"?: bool
11164		})
11165		...
11166	}, {
11167		// ARM template deployment
11168		//
11169		// Deploy an Azure Resource Manager (ARM) template to all the
11170		// deployment scopes
11171		"task"!: null | bool | number | =~"^AzureResourceManagerTemplateDeployment@3$" | [...] | {
11172			...
11173		}
11174
11175		// ARM template deployment inputs
11176		"inputs"!: null | bool | number | string | [...] | close({
11177			// Deployment scope
11178			"deploymentScope"?: "Management Group" | "Subscription" | "Resource Group"
11179
11180			// Azure Resource Manager connection
11181			"azureResourceManagerConnection"!: string
11182
11183			// Subscription
11184			"subscriptionId"?: string
11185
11186			// Action
11187			"action"?: "Create Or Update Resource Group" | "DeleteRG"
11188
11189			// Resource group
11190			"resourceGroupName"?: string
11191
11192			// Location
11193			"location"?: string
11194
11195			// Template location
11196			"templateLocation"?: "Linked artifact" | "URL of the file"
11197
11198			// Template link
11199			"csmFileLink"?: string
11200
11201			// Template parameters link
11202			"csmParametersFileLink"?: string
11203
11204			// Template
11205			"csmFile"?: string
11206
11207			// Template parameters
11208			"csmParametersFile"?: string
11209
11210			// Override template parameters
11211			"overrideParameters"?: string
11212
11213			// Deployment mode
11214			"deploymentMode"?: "Incremental" | "Complete" | "Validation"
11215
11216			// Deployment name
11217			"deploymentName"?: string
11218
11219			// Deployment outputs
11220			"deploymentOutputs"?: string
11221
11222			// Access service principal details in override parameters
11223			"addSpnToEnvironment"?: bool
11224
11225			// Use individual output values without JSON.Stringify applied
11226			"useWithoutJSON"?: bool
11227		})
11228		...
11229	}, {
11230		// Invoke REST API
11231		//
11232		// Invoke REST API as a part of your process.
11233		"task"!: null | bool | number | =~"^InvokeRESTAPI@0$" | [...] | {
11234			...
11235		}
11236
11237		// Invoke REST API inputs
11238		"inputs"!: null | bool | number | string | [...] | close({
11239			// Generic endpoint
11240			"serviceConnection"!: string
11241
11242			// Method
11243			"method"?: "OPTIONS" | "GET" | "HEAD" | "POST" | "PUT" | "DELETE" | "TRACE" | "PATCH"
11244
11245			// Headers
11246			"headers"?: string
11247
11248			// Body
11249			"body"?: string
11250
11251			// Url suffix string
11252			"urlSuffix"?: string
11253
11254			// Complete based on
11255			"waitForCompletion"?: "true" | "false"
11256
11257			// Success criteria
11258			"successCriteria"?: string
11259		})
11260		...
11261	}, {
11262		// Invoke REST API
11263		//
11264		// Invoke a REST API as a part of your pipeline.
11265		"task"!: null | bool | number | =~"^InvokeRESTAPI@1$" | [...] | {
11266			...
11267		}
11268
11269		// Invoke REST API inputs
11270		"inputs"?: null | bool | number | string | [...] | close({
11271			// Connection type
11272			"connectionType"?: "connectedServiceName" | "connectedServiceNameARM"
11273
11274			// Generic service connection
11275			"serviceConnection"?: string
11276
11277			// Azure subscription
11278			"azureServiceConnection"?: string
11279
11280			// Method
11281			"method"?: "OPTIONS" | "GET" | "HEAD" | "POST" | "PUT" | "DELETE" | "TRACE" | "PATCH"
11282
11283			// Headers
11284			"headers"?: string
11285
11286			// Body
11287			"body"?: string
11288
11289			// URL suffix and parameters
11290			"urlSuffix"?: string
11291
11292			// Completion event
11293			"waitForCompletion"?: "true" | "false"
11294
11295			// Success criteria
11296			"successCriteria"?: string
11297		})
11298		...
11299	}, {
11300		// Archive Files
11301		//
11302		// Archive files using compression formats such as .7z, .rar,
11303		// .tar.gz, and .zip.
11304		"task"!: null | bool | number | =~"^ArchiveFiles@1$" | [...] | {
11305			...
11306		}
11307
11308		// Archive Files inputs
11309		"inputs"?: null | bool | number | string | [...] | close({
11310			// Root folder (or file) to archive
11311			"rootFolder"?: string
11312
11313			// Prefix root folder name to archive paths
11314			"includeRootFolder"?: bool
11315
11316			// Archive type
11317			"archiveType"?: "default" | "7z" | "tar" | "wim"
11318
11319			// Tar compression
11320			"tarCompression"?: "gz" | "bz2" | "xz" | "none"
11321
11322			// Archive file to create
11323			"archiveFile"?: string
11324
11325			// Replace existing archive
11326			"replaceExistingArchive"?: bool
11327		})
11328		...
11329	}, {
11330		// Archive files
11331		//
11332		// Compress files into .7z, .tar.gz, or .zip
11333		"task"!: null | bool | number | =~"^ArchiveFiles@2$" | [...] | {
11334			...
11335		}
11336
11337		// Archive files inputs
11338		"inputs"?: null | bool | number | string | [...] | close({
11339			// Root folder or file to archive
11340			"rootFolderOrFile"?: string
11341
11342			// Prepend root folder name to archive paths
11343			"includeRootFolder"?: bool
11344
11345			// Archive type
11346			"archiveType"?: "zip" | "7z" | "tar" | "wim"
11347
11348			// 7z compression
11349			"sevenZipCompression"?: "ultra" | "maximum" | "normal" | "fast" | "fastest" | "none"
11350
11351			// Tar compression
11352			"tarCompression"?: "gz" | "bz2" | "xz" | "none"
11353
11354			// Archive file to create
11355			"archiveFile"?: string
11356
11357			// Replace existing archive
11358			"replaceExistingArchive"?: bool
11359
11360			// Force verbose output
11361			"verbose"?: bool
11362
11363			// Force quiet output
11364			"quiet"?: bool
11365		})
11366		...
11367	}, {
11368		// GitHub Comment
11369		//
11370		// Write a comment to your Github entity i.e. issue or a Pull
11371		// Request (PR)
11372		"task"!: null | bool | number | =~"^GitHubComment@0$" | [...] | {
11373			...
11374		}
11375
11376		// GitHub Comment inputs
11377		"inputs"!: null | bool | number | string | [...] | close({
11378			// GitHub connection (OAuth or PAT)
11379			"gitHubConnection"!: string
11380
11381			// Repository
11382			"repositoryName"?: string
11383
11384			// ID of the github pr/issue
11385			"id"?: string
11386
11387			// Comment
11388			"comment"?: string
11389		})
11390		...
11391	}, {
11392		// Copy files
11393		//
11394		// Copy files from a source folder to a target folder using
11395		// patterns matching file paths (not folder paths)
11396		"task"!: null | bool | number | =~"^CopyFiles@2$" | [...] | {
11397			...
11398		}
11399
11400		// Copy files inputs
11401		"inputs"!: null | bool | number | string | [...] | close({
11402			// Source Folder
11403			"SourceFolder"?: string
11404
11405			// Contents
11406			"Contents"?: string
11407
11408			// Target Folder
11409			"TargetFolder"!: string
11410
11411			// Clean Target Folder
11412			"CleanTargetFolder"?: bool
11413
11414			// Overwrite
11415			"OverWrite"?: bool
11416
11417			// Flatten Folders
11418			"flattenFolders"?: bool
11419
11420			// Preserve Target Timestamp
11421			"preserveTimestamp"?: bool
11422
11423			// Retry count to copy the file
11424			"retryCount"?: string
11425
11426			// Delay between two retries.
11427			"delayBetweenRetries"?: string
11428
11429			// Ignore errors during creation of target folder.
11430			"ignoreMakeDirErrors"?: bool
11431		})
11432		...
11433	}, {
11434		// Copy Files
11435		//
11436		// Copy files from source folder to target folder using minimatch
11437		// patterns (The minimatch patterns will only match file paths,
11438		// not folder paths)
11439		"task"!: null | bool | number | =~"^CopyFiles@1$" | [...] | {
11440			...
11441		}
11442
11443		// Copy Files inputs
11444		"inputs"!: null | bool | number | string | [...] | close({
11445			// Source Folder
11446			"SourceFolder"?: string
11447
11448			// Contents
11449			"Contents"?: string
11450
11451			// Target Folder
11452			"TargetFolder"!: string
11453
11454			// Clean Target Folder
11455			"CleanTargetFolder"?: bool
11456
11457			// Overwrite
11458			"OverWrite"?: bool
11459
11460			// Flatten Folders
11461			"flattenFolders"?: bool
11462		})
11463		...
11464	}, {
11465		// Azure Database for MySQL deployment
11466		//
11467		// Run your scripts and make changes to your Azure Database for
11468		// MySQL
11469		"task"!: null | bool | number | =~"^AzureMysqlDeployment@1$" | [...] | {
11470			...
11471		}
11472
11473		// Azure Database for MySQL deployment inputs
11474		"inputs"!: null | bool | number | string | [...] | close({
11475			// Azure Subscription
11476			"azureSubscription"!: string
11477
11478			// Host Name
11479			"ServerName"!: string
11480
11481			// Database Name
11482			"DatabaseName"?: string
11483
11484			// Server Admin Login
11485			"SqlUsername"!: string
11486
11487			// Password
11488			"SqlPassword"!: string
11489
11490			// Type
11491			"TaskNameSelector"?: "SqlTaskFile" | "InlineSqlTask"
11492
11493			// MySQL Script
11494			"SqlFile"?: string
11495
11496			// Inline MySQL Script
11497			"SqlInline"?: string
11498
11499			// Additional MySQL Arguments
11500			"SqlAdditionalArguments"?: string
11501
11502			// Specify Firewall Rules Using
11503			"IpDetectionMethod"?: "AutoDetect" | "IPAddressRange"
11504
11505			// Start IP Address
11506			"StartIpAddress"?: string
11507
11508			// End IP Address
11509			"EndIpAddress"?: string
11510
11511			// Delete Rule After Task Ends
11512			"DeleteFirewallRule"?: bool
11513		})
11514		...
11515	}, {
11516		// npm
11517		//
11518		// Install and publish npm packages, or run an npm command.
11519		// Supports npmjs.com and authenticated registries like Azure
11520		// Artifacts.
11521		"task"!: null | bool | number | =~"^Npm@1$" | [...] | {
11522			...
11523		}
11524
11525		// npm inputs
11526		"inputs"?: null | bool | number | string | [...] | close({
11527			// Command
11528			"command"?: "ci" | "install" | "publish" | "custom"
11529
11530			// Working folder that contains package.json
11531			"workingDir"?: string
11532
11533			// Verbose logging
11534			"verbose"?: bool
11535
11536			// Command and arguments
11537			"customCommand"?: string
11538
11539			// Registries to use
11540			"customRegistry"?: "useNpmrc" | "useFeed"
11541
11542			// Use packages from this Azure Artifacts/TFS registry
11543			"customFeed"?: string
11544
11545			// Credentials for registries outside this organization/collection
11546			"customEndpoint"?: string
11547
11548			// Registry location
11549			"publishRegistry"?: "useExternalRegistry" | "useFeed"
11550
11551			// Target registry
11552			"publishFeed"?: string
11553
11554			// Publish pipeline metadata
11555			"publishPackageMetadata"?: bool
11556
11557			// External Registry
11558			"publishEndpoint"?: string
11559		})
11560		...
11561	}, {
11562		// npm
11563		//
11564		// Run an npm command. Use NpmAuthenticate@0 task for latest
11565		// capabilities.
11566		"task"!: null | bool | number | =~"^Npm@0$" | [...] | {
11567			...
11568		}
11569
11570		// npm inputs
11571		"inputs"?: null | bool | number | string | [...] | close({
11572			// working folder
11573			"cwd"?: string
11574
11575			// npm command
11576			"command"?: string
11577
11578			// arguments
11579			"arguments"?: string
11580		})
11581		...
11582	}, {
11583		// Deploy Azure Static Web App
11584		//
11585		// [PREVIEW] Build and deploy an Azure Static Web App
11586		"task"!: null | bool | number | =~"^AzureStaticWebApp@0$" | [...] | {
11587			...
11588		}
11589
11590		// Deploy Azure Static Web App inputs
11591		"inputs"?: null | bool | number | string | [...] | close({
11592			// Working directory
11593			"workingDirectory"?: string
11594
11595			// App location
11596			"app_location"?: string
11597
11598			// App build command
11599			"app_build_command"?: string
11600
11601			// Output location
11602			"output_location"?: string
11603
11604			// Api location
11605			"api_location"?: string
11606
11607			// Api build command
11608			"api_build_command"?: string
11609
11610			// Routes location
11611			"routes_location"?: string
11612
11613			// Config file location
11614			"config_file_location"?: string
11615
11616			// Skip app build
11617			"skip_app_build"?: bool
11618
11619			// Skip api build
11620			"skip_api_build"?: bool
11621
11622			// Set static export
11623			"is_static_export"?: bool
11624
11625			// Verbose
11626			"verbose"?: bool
11627
11628			// Build timeout in minutes
11629			"build_timeout_in_minutes"?: int
11630
11631			// Azure Static Web Apps api token
11632			"azure_static_web_apps_api_token"?: string
11633
11634			// Deployment Environment
11635			"deployment_environment"?: string
11636
11637			// Production Branch
11638			"production_branch"?: string
11639
11640			// Data api location
11641			"data_api_location"?: string
11642
11643			// Azure Access Token
11644			"azure_access_token"?: string
11645
11646			// Default Hostname
11647			"default_hostname"?: string
11648		})
11649		...
11650	}, {
11651		// Node.js tool installer
11652		//
11653		// Finds or downloads and caches the specified version spec of
11654		// Node.js and adds it to the PATH
11655		"task"!: null | bool | number | =~"^NodeTool@0$" | [...] | {
11656			...
11657		}
11658
11659		// Node.js tool installer inputs
11660		"inputs"?: null | bool | number | string | [...] | close({
11661			// Source of version
11662			"versionSource"?: "spec" | "fromFile"
11663
11664			// Version Spec
11665			"versionSpec"?: string
11666
11667			// Path to the .nvmrc file
11668			"versionFilePath"?: string
11669
11670			// Check for Latest Version
11671			"checkLatest"?: bool
11672
11673			// Use 32 bit version on x64 agents
11674			"force32bit"?: bool
11675
11676			// Set source for Node.js binaries
11677			"nodejsMirror"?: string
11678
11679			// Set retry count when nodes downloads failed
11680			"retryCountOnDownloadFails"?: string
11681
11682			// Set delay between retries
11683			"delayBetweenRetries"?: string
11684		})
11685		...
11686	}, {
11687		// [Deprecated] SQL Server database deploy
11688		//
11689		// Deploy a SQL Server database using DACPAC
11690		"task"!: null | bool | number | =~"^SqlServerDacpacDeployment@1$" | [...] | {
11691			...
11692		}
11693
11694		// [Deprecated] SQL Server database deploy inputs
11695		"inputs"!: null | bool | number | string | [...] | close({
11696			// Machines
11697			"EnvironmentName"!: string
11698
11699			// Admin Login
11700			"AdminUserName"?: string
11701
11702			// Password
11703			"AdminPassword"?: string
11704
11705			// Protocol
11706			"Protocol"?: "Http" | "Https"
11707
11708			// Test Certificate
11709			"TestCertificate"?: bool
11710
11711			// DACPAC File
11712			"DacpacFile"!: string
11713
11714			// Specify SQL Using
11715			"TargetMethod"?: "server" | "connectionString" | "publishProfile"
11716
11717			// Server Name
11718			"ServerName"?: string
11719
11720			// Database Name
11721			"DatabaseName"?: string
11722
11723			// SQL Username
11724			"SqlUsername"?: string
11725
11726			// SQL Password
11727			"SqlPassword"?: string
11728
11729			// Connection String
11730			"ConnectionString"?: string
11731
11732			// Publish Profile
11733			"PublishProfile"?: string
11734
11735			// Additional Arguments
11736			"AdditionalArguments"?: string
11737
11738			// Deploy in Parallel
11739			"DeployInParallel"?: bool
11740
11741			// Select Machines By
11742			"ResourceFilteringMethod"?: "machineNames" | "tags"
11743
11744			// Deploy to Machines
11745			"MachineFilter"?: string
11746		})
11747		...
11748	}, {
11749		// Visual Studio test platform installer
11750		//
11751		// Acquire the test platform from nuget.org or the tool cache.
11752		// Satisfies the ‘vstest’ demand and can be used for running
11753		// tests and collecting diagnostic data using the Visual Studio
11754		// Test task.
11755		"task"!: null | bool | number | =~"^VisualStudioTestPlatformInstaller@1$" | [...] | {
11756			...
11757		}
11758
11759		// Visual Studio test platform installer inputs
11760		"inputs"?: null | bool | number | string | [...] | close({
11761			// Package Feed
11762			"packageFeedSelector"?: "nugetOrg" | "customFeed" | "netShare"
11763
11764			// Version
11765			"versionSelector"?: "latestPreRelease" | "latestStable" | "specificVersion"
11766
11767			// Test Platform Version
11768			"testPlatformVersion"?: string
11769
11770			// Package Source
11771			"customFeed"?: string
11772
11773			// User Name
11774			"username"?: string
11775
11776			// Password
11777			"password"?: string
11778
11779			// UNC Path
11780			"netShare"?: string
11781		})
11782		...
11783	}, {
11784		// Publish To Azure Service Bus
11785		//
11786		// Sends a message to Azure Service Bus using a service connection
11787		// (no agent is required)
11788		"task"!: null | bool | number | =~"^PublishToAzureServiceBus@1$" | [...] | {
11789			...
11790		}
11791
11792		// Publish To Azure Service Bus inputs
11793		"inputs"!: null | bool | number | string | [...] | close({
11794			// Azure Service Bus service connection
11795			"azureSubscription"!: string
11796
11797			// Message body
11798			"messageBody"?: string
11799
11800			// Session Id
11801			"sessionId"?: string
11802
11803			// Sign the Message
11804			"signPayload"?: bool
11805
11806			// Certificate Variable
11807			"certificateString"?: string
11808
11809			// Signature Property Key
11810			"signatureKey"?: string
11811
11812			// Wait for task completion
11813			"waitForCompletion"?: bool
11814
11815			// Use .NET data contract serializer
11816			"useDataContractSerializer"?: bool
11817		})
11818		...
11819	}, {
11820		// Publish To Azure Service Bus
11821		//
11822		// Sends a message to Azure Service Bus using an Azure Resource
11823		// Manager service connection (no agent is required)
11824		"task"!: null | bool | number | =~"^PublishToAzureServiceBus@2$" | [...] | {
11825			...
11826		}
11827
11828		// Publish To Azure Service Bus inputs
11829		"inputs"!: null | bool | number | string | [...] | close({
11830			// Azure Resource Manager service connection
11831			"azureSubscription"!: string
11832
11833			// Azure Service Bus Queue name
11834			"serviceBusQueueName"!: string
11835
11836			// Azure Service Bus Namespace
11837			"serviceBusNamespace"!: string
11838
11839			// Message body
11840			"messageBody"?: string
11841
11842			// Session Id
11843			"sessionId"?: string
11844
11845			// Sign the Message
11846			"signPayload"?: bool
11847
11848			// Certificate Variable
11849			"certificateString"?: string
11850
11851			// Signature Property Key
11852			"signatureKey"?: string
11853
11854			// Wait for task completion
11855			"waitForCompletion"?: bool
11856
11857			// Use .NET data contract serializer
11858			"useDataContractSerializer"?: bool
11859		})
11860		...
11861	}, {
11862		// Publish To Azure Service Bus
11863		//
11864		// Sends a message to azure service bus using a service connection
11865		// (no agent required).
11866		"task"!: null | bool | number | =~"^PublishToAzureServiceBus@0$" | [...] | {
11867			...
11868		}
11869
11870		// Publish To Azure Service Bus inputs
11871		"inputs"!: null | bool | number | string | [...] | close({
11872			// Azure service bus connection
11873			"azureSubscription"!: string
11874
11875			// Message body
11876			"messageBody"?: string
11877
11878			// Wait for task completion
11879			"waitForCompletion"?: bool
11880		})
11881		...
11882	}, {
11883		// Deploy to Kubernetes
11884		//
11885		// Use Kubernetes manifest files to deploy to clusters or even
11886		// bake the manifest files to be used for deployments using Helm
11887		// charts
11888		"task"!: null | bool | number | =~"^KubernetesManifest@0$" | [...] | {
11889			...
11890		}
11891
11892		// Deploy to Kubernetes inputs
11893		"inputs"?: null | bool | number | string | [...] | close({
11894			// Action
11895			"action"?: "bake" | "createSecret" | "delete" | "deploy" | "patch" | "promote" | "scale" | "reject"
11896
11897			// Kubernetes service connection
11898			"kubernetesServiceConnection"?: string
11899
11900			// Namespace
11901			"namespace"?: string
11902
11903			// Strategy
11904			"strategy"?: "canary" | "none"
11905
11906			// Traffic split method
11907			"trafficSplitMethod"?: "pod" | "smi"
11908
11909			// Percentage
11910			"percentage"?: string
11911
11912			// Baseline and canary replicas
11913			"baselineAndCanaryReplicas"?: string
11914
11915			// Manifests
11916			"manifests"?: string
11917
11918			// Containers
11919			"containers"?: string
11920
11921			// ImagePullSecrets
11922			"imagePullSecrets"?: string
11923
11924			// Render Engine
11925			"renderType"?: "helm" | "kompose" | "kustomize"
11926
11927			// Path to docker compose file
11928			"dockerComposeFile"?: string
11929
11930			// Helm Chart
11931			"helmChart"?: string
11932
11933			// Helm Release Name
11934			"releaseName"?: string
11935
11936			// Override Files
11937			"overrideFiles"?: string
11938
11939			// Overrides
11940			"overrides"?: string
11941
11942			// Kustomization Path
11943			"kustomizationPath"?: string
11944
11945			// Resource to patch
11946			"resourceToPatch"?: "file" | "name"
11947
11948			// File path
11949			"resourceFileToPatch"?: string
11950
11951			// Kind
11952			"kind"?: "deployment" | "replicaset" | "statefulset"
11953
11954			// Name
11955			"name"?: string
11956
11957			// Replica count
11958			"replicas"?: string
11959
11960			// Merge Strategy
11961			"mergeStrategy"?: "json" | "merge" | "strategic"
11962
11963			// Arguments
11964			"arguments"?: string
11965
11966			// Patch
11967			"patch"?: string
11968
11969			// Type of secret
11970			"secretType"?: "dockerRegistry" | "generic"
11971
11972			// Secret name
11973			"secretName"?: string
11974
11975			// Arguments
11976			"secretArguments"?: string
11977
11978			// Docker registry service connection
11979			"dockerRegistryEndpoint"?: string
11980
11981			// Timeout for rollout status
11982			"rolloutStatusTimeout"?: string
11983		})
11984		...
11985	}, {
11986		// Deploy to Kubernetes
11987		//
11988		// Use Kubernetes manifest files to deploy to clusters or even
11989		// bake the manifest files to be used for deployments using Helm
11990		// charts
11991		"task"!: null | bool | number | =~"^KubernetesManifest@1$" | [...] | {
11992			...
11993		}
11994
11995		// Deploy to Kubernetes inputs
11996		"inputs"?: null | bool | number | string | [...] | close({
11997			// Action
11998			"action"?: "bake" | "createSecret" | "delete" | "deploy" | "patch" | "promote" | "scale" | "reject"
11999
12000			// Service connection type
12001			"connectionType"?: "azureResourceManager" | "kubernetesServiceConnection"
12002
12003			// Kubernetes service connection
12004			"kubernetesServiceConnection"?: string
12005
12006			// Azure subscription
12007			"azureSubscriptionConnection"?: string
12008
12009			// Resource group
12010			"azureResourceGroup"?: string
12011
12012			// Kubernetes cluster
12013			"kubernetesCluster"?: string
12014
12015			// Use cluster admin credentials
12016			"useClusterAdmin"?: bool
12017
12018			// Namespace
12019			"namespace"?: string
12020
12021			// Strategy
12022			"strategy"?: "canary" | "none"
12023
12024			// Traffic split method
12025			"trafficSplitMethod"?: "pod" | "smi"
12026
12027			// Percentage
12028			"percentage"?: string
12029
12030			// Baseline and canary replicas
12031			"baselineAndCanaryReplicas"?: string
12032
12033			// Manifests
12034			"manifests"?: string
12035
12036			// Containers
12037			"containers"?: string
12038
12039			// ImagePullSecrets
12040			"imagePullSecrets"?: string
12041
12042			// Render Engine
12043			"renderType"?: "helm" | "kompose" | "kustomize"
12044
12045			// Path to docker compose file
12046			"dockerComposeFile"?: string
12047
12048			// Helm Chart
12049			"helmChart"?: string
12050
12051			// Helm Release Name
12052			"releaseName"?: string
12053
12054			// Override Files
12055			"overrideFiles"?: string
12056
12057			// Overrides
12058			"overrides"?: string
12059
12060			// Kustomization Path
12061			"kustomizationPath"?: string
12062
12063			// Resource to patch
12064			"resourceToPatch"?: "file" | "name"
12065
12066			// File path
12067			"resourceFileToPatch"?: string
12068
12069			// Kind
12070			"kind"?: "deployment" | "replicaset" | "statefulset"
12071
12072			// Name
12073			"name"?: string
12074
12075			// Replica count
12076			"replicas"?: string
12077
12078			// Merge Strategy
12079			"mergeStrategy"?: "json" | "merge" | "strategic"
12080
12081			// Arguments
12082			"arguments"?: string
12083
12084			// Patch
12085			"patch"?: string
12086
12087			// Type of secret
12088			"secretType"?: "dockerRegistry" | "generic"
12089
12090			// Secret name
12091			"secretName"?: string
12092
12093			// Arguments
12094			"secretArguments"?: string
12095
12096			// Docker registry service connection
12097			"dockerRegistryEndpoint"?: string
12098
12099			// Timeout for rollout status
12100			"rolloutStatusTimeout"?: string
12101
12102			// Resource type
12103			"resourceType"?: string
12104		})
12105		...
12106	}, {
12107		// Download build artifacts
12108		//
12109		// Download files that were saved as artifacts of a completed
12110		// build
12111		"task"!: null | bool | number | =~"^DownloadBuildArtifacts@0$" | [...] | {
12112			...
12113		}
12114
12115		// Download build artifacts inputs
12116		"inputs"?: null | bool | number | string | [...] | close({
12117			// Download artifacts produced by
12118			"buildType"?: "current" | "specific"
12119
12120			// Project
12121			"project"?: string
12122
12123			// Build pipeline
12124			"pipeline"?: string
12125
12126			// When appropriate, download artifacts from the triggering build.
12127			"specificBuildWithTriggering"?: bool
12128
12129			// Build version to download
12130			"buildVersionToDownload"?: "latest" | "latestFromBranch" | "specific"
12131
12132			// Download artifacts even from partially succeeded builds.
12133			"allowPartiallySucceededBuilds"?: bool
12134
12135			// Branch name
12136			"branchName"?: string
12137
12138			// Build
12139			"buildId"?: string
12140
12141			// Build Tags
12142			"tags"?: string
12143
12144			// Download type
12145			"downloadType"?: "single" | "specific"
12146
12147			// Artifact name
12148			"artifactName"?: string
12149
12150			// Matching pattern
12151			"itemPattern"?: string
12152
12153			// Destination directory
12154			"downloadPath"?: string
12155
12156			// Clean destination folder
12157			"cleanDestinationFolder"?: bool
12158
12159			// Parallelization limit
12160			"parallelizationLimit"?: string
12161
12162			// Check downloaded files
12163			"checkDownloadedFiles"?: bool
12164
12165			// Retry count
12166			"retryDownloadCount"?: string
12167
12168			// Retry count for redirect download
12169			"retryRedirectDownloadCount"?: string
12170
12171			// Extract all files that are stored inside tar archives
12172			"extractTars"?: bool
12173		})
12174		...
12175	}, {
12176		// Download build artifacts
12177		//
12178		// Download files that were saved as artifacts of a completed
12179		// build
12180		"task"!: null | bool | number | =~"^DownloadBuildArtifacts@1$" | [...] | {
12181			...
12182		}
12183
12184		// Download build artifacts inputs
12185		"inputs"?: null | bool | number | string | [...] | close({
12186			// Download artifacts produced by
12187			"buildType"?: "current" | "specific"
12188
12189			// Project
12190			"project"?: string
12191
12192			// Build pipeline
12193			"pipeline"?: string
12194
12195			// When appropriate, download artifacts from the triggering build.
12196			"specificBuildWithTriggering"?: bool
12197
12198			// Build version to download
12199			"buildVersionToDownload"?: "latest" | "latestFromBranch" | "specific"
12200
12201			// Download artifacts even from partially succeeded builds.
12202			"allowPartiallySucceededBuilds"?: bool
12203
12204			// Branch name
12205			"branchName"?: string
12206
12207			// Build
12208			"buildId"?: string
12209
12210			// Build Tags
12211			"tags"?: string
12212
12213			// Download type
12214			"downloadType"?: "single" | "specific"
12215
12216			// Artifact name
12217			"artifactName"?: string
12218
12219			// Matching pattern
12220			"itemPattern"?: string
12221
12222			// Destination directory
12223			"downloadPath"?: string
12224
12225			// Clean destination folder
12226			"cleanDestinationFolder"?: bool
12227
12228			// Parallelization limit
12229			"parallelizationLimit"?: string
12230
12231			// Check downloaded files
12232			"checkDownloadedFiles"?: bool
12233
12234			// Retry count
12235			"retryDownloadCount"?: string
12236
12237			// Extract all files that are stored inside tar archives
12238			"extractTars"?: bool
12239		})
12240		...
12241	}, {
12242		// CocoaPods
12243		//
12244		// Install CocoaPods dependencies for Swift and Objective-C Cocoa
12245		// projects
12246		"task"!: null | bool | number | =~"^CocoaPods@0$" | [...] | {
12247			...
12248		}
12249
12250		// CocoaPods inputs
12251		"inputs"?: null | bool | number | string | [...] | close({
12252			// Working directory
12253			"workingDirectory"?: string
12254
12255			// Force repo update
12256			"forceRepoUpdate"?: bool
12257
12258			// Project directory
12259			"projectDirectory"?: string
12260		})
12261		...
12262	}, {
12263		// Azure Spring Apps
12264		//
12265		// Deploy applications to Azure Spring Apps and manage
12266		// deployments.
12267		"task"!: null | bool | number | =~"^AzureSpringCloud@0$" | [...] | {
12268			...
12269		}
12270
12271		// Azure Spring Apps inputs
12272		"inputs"!: null | bool | number | string | [...] | close({
12273			// Azure subscription
12274			"azureSubscription"!: string
12275
12276			// Action
12277			"Action"?: "Deploy" | "Set Production" | "Delete Staging Deployment"
12278
12279			// Azure Spring Apps Name
12280			"AzureSpringCloud"!: string
12281
12282			// App
12283			"AppName"!: string
12284
12285			// Deployment Type
12286			"DeploymentType"?: "Artifacts" | "CustomContainer"
12287
12288			// Use Staging Deployment
12289			"UseStagingDeployment"?: bool
12290
12291			// Create a new staging deployment if one does not exist.
12292			"CreateNewDeployment"?: bool
12293
12294			// Deployment
12295			"DeploymentName"?: string
12296
12297			// Package or folder
12298			"Package"?: string
12299
12300			// Builder
12301			"Builder"?: string
12302
12303			// Registry Server
12304			"RegistryServer"?: string
12305
12306			// Registry Username
12307			"RegistryUsername"?: string
12308
12309			// Registry Password
12310			"RegistryPassword"?: string
12311
12312			// Image Name and Tag
12313			"ImageName"?: string
12314
12315			// Image Command
12316			"ImageCommand"?: string
12317
12318			// Image Arguments
12319			"ImageArgs"?: string
12320
12321			// Language Framework
12322			"ImageLanguageFramework"?: "springboot" | ""
12323
12324			// Environment Variables
12325			"EnvironmentVariables"?: string
12326
12327			// JVM Options
12328			"JvmOptions"?: string
12329
12330			// Runtime Version
12331			"RuntimeVersion"?: "Java_8" | "Java_11" | "Java_17" | "Java_21" | "NetCore_31"
12332
12333			// Main Entry Path
12334			"DotNetCoreMainEntryPath"?: string
12335
12336			// Version
12337			"Version"?: string
12338		})
12339		...
12340	}, {
12341		// Azure Web App
12342		//
12343		// Deploy an Azure Web App for Linux or Windows
12344		"task"!: null | bool | number | =~"^AzureWebApp@1$" | [...] | {
12345			...
12346		}
12347
12348		// Azure Web App inputs
12349		"inputs"!: null | bool | number | string | [...] | close({
12350			// Azure subscription
12351			"azureSubscription"!: string
12352
12353			// App type
12354			"appType"!: "webApp" | "webAppLinux"
12355
12356			// App name
12357			"appName"!: string
12358
12359			// Deploy to Slot or App Service Environment
12360			"deployToSlotOrASE"?: bool
12361
12362			// Resource group
12363			"resourceGroupName"?: string
12364
12365			// Slot
12366			"slotName"?: string
12367
12368			// Package or folder
12369			"package"?: string
12370
12371			// Custom Deploy Folder
12372			"customDeployFolder"?: string
12373
12374			// Runtime stack
12375			"runtimeStack"?: "DOTNETCORE|9.0" | "DOTNETCORE|8.0" | "DOTNETCORE|7.0" | "DOTNETCORE|6.0" | "NODE|22-lts" | "NODE|20-lts" | "NODE|18-lts" | "NODE|16-lts" | "PYTHON|3.13" | "PYTHON|3.12" | "PYTHON|3.11" | "PYTHON|3.10" | "PYTHON|3.9" | "PYTHON|3.8" | "PHP|8.3" | "PHP|8.2" | "PHP|8.1" | "PHP|8.0" | "JAVA|21-java21" | "JAVA|17-java17" | "JAVA|11-java11" | "JAVA|8-jre8" | "JBOSSEAP|8-java17" | "JBOSSEAP|8-java11" | "JBOSSEAP|7-java17" | "JBOSSEAP|7-java11" | "JBOSSEAP|7-java8" | "TOMCAT|10.1-java21" | "TOMCAT|10.1-java17" | "TOMCAT|10.1-java11" | "TOMCAT|10.0-java17" | "TOMCAT|10.0-java11" | "TOMCAT|10.0-jre8" | "TOMCAT|9.0-java21" | "TOMCAT|9.0-java17" | "TOMCAT|9.0-java11" | "TOMCAT|9.0-jre8" | "TOMCAT|8.5-java11" | "TOMCAT|8.5-jre8"
12376
12377			// Startup command
12378			"startUpCommand"?: string
12379
12380			// Generate web.config parameters for Python, Node.js, Go and Java
12381			// apps
12382			"customWebConfig"?: string
12383
12384			// App settings
12385			"appSettings"?: string
12386
12387			// Configuration settings
12388			"configurationStrings"?: string
12389
12390			// Deployment method
12391			"deploymentMethod"?: "auto" | "zipDeploy" | "runFromPackage"
12392		})
12393		...
12394	}, {
12395		// Azure CLI
12396		//
12397		// Run Azure CLI commands against an Azure subscription in a Shell
12398		// script when running on Linux agent or Batch script when
12399		// running on Windows agent.
12400		"task"!: null | bool | number | =~"^AzureCLI@1$" | [...] | {
12401			...
12402		}
12403
12404		// Azure CLI inputs
12405		"inputs"!: null | bool | number | string | [...] | close({
12406			// Azure subscription
12407			"azureSubscription"!: string
12408
12409			// Script Location
12410			"scriptLocation"?: "inlineScript" | "scriptPath"
12411
12412			// Script Path
12413			"scriptPath"?: string
12414
12415			// Inline Script
12416			"inlineScript"?: string
12417
12418			// Arguments
12419			"arguments"?: string
12420
12421			// Access service principal details in script
12422			"addSpnToEnvironment"?: bool
12423
12424			// Use global Azure CLI configuration
12425			"useGlobalConfig"?: bool
12426
12427			// Working Directory
12428			"workingDirectory"?: string
12429
12430			// Fail on Standard Error
12431			"failOnStandardError"?: bool
12432		})
12433		...
12434	}, {
12435		// Azure CLI
12436		//
12437		// Run Azure CLI commands against an Azure subscription in a
12438		// PowerShell Core/Shell script when running on Linux agent or
12439		// PowerShell/PowerShell Core/Batch script when running on
12440		// Windows agent.
12441		"task"!: null | bool | number | =~"^AzureCLI@2$" | [...] | {
12442			...
12443		}
12444
12445		// Azure CLI inputs
12446		"inputs"!: null | bool | number | string | [...] | close({
12447			// Azure Resource Manager connection
12448			"azureSubscription"!: string
12449
12450			// Script Type
12451			"scriptType"!: "ps" | "pscore" | "batch" | "bash"
12452
12453			// Script Location
12454			"scriptLocation"?: "inlineScript" | "scriptPath"
12455
12456			// Script Path
12457			"scriptPath"?: string
12458
12459			// Inline Script
12460			"inlineScript"?: string
12461
12462			// Script Arguments
12463			"arguments"?: string
12464
12465			// ErrorActionPreference
12466			"powerShellErrorActionPreference"?: "stop" | "continue" | "silentlyContinue"
12467
12468			// Access service principal details in script
12469			"addSpnToEnvironment"?: bool
12470
12471			// Use global Azure CLI configuration
12472			"useGlobalConfig"?: bool
12473
12474			// Working Directory
12475			"workingDirectory"?: string
12476
12477			// Fail on Standard Error
12478			"failOnStandardError"?: bool
12479
12480			// Ignore $LASTEXITCODE
12481			"powerShellIgnoreLASTEXITCODE"?: bool
12482
12483			// az login output visibility
12484			"visibleAzLogin"?: bool
12485
12486			// [Experimental] Keep Azure CLI session active
12487			"keepAzSessionActive"?: bool
12488		})
12489		...
12490	}, {
12491		// Azure CLI Preview
12492		//
12493		// Run a Shell or Batch script with Azure CLI commands against an
12494		// azure subscription
12495		"task"!: null | bool | number | =~"^AzureCLI@0$" | [...] | {
12496			...
12497		}
12498
12499		// Azure CLI Preview inputs
12500		"inputs"?: null | bool | number | string | [...] | close({
12501			// Azure Connection Type
12502			"connectedServiceNameSelector"?: "connectedServiceName" | "connectedServiceNameARM"
12503
12504			// AzureRM Subscription
12505			"connectedServiceNameARM"?: string
12506
12507			// Azure Classic Subscription
12508			"connectedServiceName"?: string
12509
12510			// Script Location
12511			"scriptLocation"?: "inlineScript" | "scriptPath"
12512
12513			// Script Path
12514			"scriptPath"?: string
12515
12516			// Inline Script
12517			"inlineScript"?: string
12518
12519			// Arguments
12520			"args"?: string
12521
12522			// Working Directory
12523			"cwd"?: string
12524
12525			// Fail on Standard Error
12526			"failOnStandardError"?: bool
12527		})
12528		...
12529	}, {
12530		// Azure CLI
12531		//
12532		// Run Azure CLI commands against an Azure subscription in a
12533		// PowerShell Core/Shell script when running on Linux agent or
12534		// PowerShell/PowerShell Core/Batch script when running on
12535		// Windows agent.
12536		"task"!: null | bool | number | =~"^AzureCLI@2$" | [...] | {
12537			...
12538		}
12539
12540		// Azure CLI inputs
12541		"inputs"!: null | bool | number | string | [...] | close({
12542			// Azure Resource Manager connection
12543			"azureSubscription"!: string
12544
12545			// Script Type
12546			"scriptType"!: "ps" | "pscore" | "batch" | "bash"
12547
12548			// Script Location
12549			"scriptLocation"?: "inlineScript" | "scriptPath"
12550
12551			// Script Path
12552			"scriptPath"?: string
12553
12554			// Inline Script
12555			"inlineScript"?: string
12556
12557			// Script Arguments
12558			"arguments"?: string
12559
12560			// ErrorActionPreference
12561			"powerShellErrorActionPreference"?: "stop" | "continue" | "silentlyContinue"
12562
12563			// Access service principal details in script
12564			"addSpnToEnvironment"?: bool
12565
12566			// Use global Azure CLI configuration
12567			"useGlobalConfig"?: bool
12568
12569			// Working Directory
12570			"workingDirectory"?: string
12571
12572			// Fail on Standard Error
12573			"failOnStandardError"?: bool
12574
12575			// Ignore $LASTEXITCODE
12576			"powerShellIgnoreLASTEXITCODE"?: bool
12577
12578			// az login output visibility
12579			"visibleAzLogin"?: bool
12580
12581			// [Experimental] Keep Azure CLI session active
12582			"keepAzSessionActive"?: bool
12583		})
12584		...
12585	}, {
12586		// GitHub Release
12587		//
12588		// Create, edit, or delete a GitHub release
12589		"task"!: null | bool | number | =~"^GitHubRelease@1$" | [...] | {
12590			...
12591		}
12592
12593		// GitHub Release inputs
12594		"inputs"!: null | bool | number | string | [...] | close({
12595			// GitHub connection (OAuth or PAT)
12596			"gitHubConnection"!: string
12597
12598			// Repository
12599			"repositoryName"?: string
12600
12601			// Action
12602			"action"?: "create" | "edit" | "delete"
12603
12604			// Target
12605			"target"?: string
12606
12607			// Tag source
12608			"tagSource"?: "gitTag" | "userSpecifiedTag"
12609
12610			// Tag Pattern
12611			"tagPattern"?: string
12612
12613			// Tag
12614			"tag"?: string
12615
12616			// Release title
12617			"title"?: string
12618
12619			// Release notes source
12620			"releaseNotesSource"?: "filePath" | "inline"
12621
12622			// Release notes file path
12623			"releaseNotesFilePath"?: string
12624
12625			// Release notes
12626			"releaseNotesInline"?: string
12627
12628			// Assets
12629			"assets"?: string
12630
12631			// Asset upload mode
12632			"assetUploadMode"?: "delete" | "replace"
12633
12634			// Draft release
12635			"isDraft"?: bool
12636
12637			// Pre-release
12638			"isPreRelease"?: bool
12639
12640			// Add changelog
12641			"addChangeLog"?: bool
12642
12643			// Compare to
12644			"changeLogCompareToRelease"?: "lastFullRelease" | "lastNonDraftRelease" | "lastNonDraftReleaseByTag"
12645
12646			// Release Tag
12647			"changeLogCompareToReleaseTag"?: string
12648
12649			// Changelog type
12650			"changeLogType"?: "commitBased" | "issueBased"
12651
12652			// Categories
12653			"changeLogLabels"?: string
12654		})
12655		...
12656	}, {
12657		// GitHub Release
12658		//
12659		// Create, edit, or delete a GitHub release
12660		"task"!: null | bool | number | =~"^GitHubRelease@0$" | [...] | {
12661			...
12662		}
12663
12664		// GitHub Release inputs
12665		"inputs"!: null | bool | number | string | [...] | close({
12666			// GitHub connection (OAuth or PAT)
12667			"gitHubConnection"!: string
12668
12669			// Repository
12670			"repositoryName"?: string
12671
12672			// Action
12673			"action"?: "create" | "edit" | "delete"
12674
12675			// Target
12676			"target"?: string
12677
12678			// Tag source
12679			"tagSource"?: "auto" | "manual"
12680
12681			// Tag Pattern
12682			"tagPattern"?: string
12683
12684			// Tag
12685			"tag"?: string
12686
12687			// Release title
12688			"title"?: string
12689
12690			// Release notes source
12691			"releaseNotesSource"?: "file" | "input"
12692
12693			// Release notes file path
12694			"releaseNotesFile"?: string
12695
12696			// Release notes
12697			"releaseNotes"?: string
12698
12699			// Assets
12700			"assets"?: string
12701
12702			// Asset upload mode
12703			"assetUploadMode"?: "delete" | "replace"
12704
12705			// Draft release
12706			"isDraft"?: bool
12707
12708			// Pre-release
12709			"isPreRelease"?: bool
12710
12711			// Add changelog
12712			"addChangeLog"?: bool
12713
12714			// Compare to
12715			"changeLogCompareToRelease"?: "lastFullRelease" | "lastNonDraftRelease" | "lastNonDraftReleaseByTag"
12716
12717			// Release Tag
12718			"changeLogCompareToReleaseTag"?: string
12719
12720			// Changelog type
12721			"changeLogType"?: "commitBased" | "issueBased"
12722
12723			// Categories
12724			"changeLogLabels"?: string
12725		})
12726		...
12727	}, {
12728		// cURL Upload Files
12729		//
12730		// Use cURL to upload files with FTP, FTPS, SFTP, HTTP, and more.
12731		"task"!: null | bool | number | =~"^cURLUploader@1$" | [...] | {
12732			...
12733		}
12734
12735		// cURL Upload Files inputs
12736		"inputs"!: null | bool | number | string | [...] | close({
12737			// Files
12738			"files"!: string
12739
12740			// Username
12741			"username"?: string
12742
12743			// Password
12744			"password"?: string
12745
12746			// URL
12747			"url"!: string
12748
12749			// Optional Arguments
12750			"options"?: string
12751
12752			// Redirect Standard Error to Standard Out
12753			"redirectStderr"?: bool
12754		})
12755		...
12756	}, {
12757		// cURL upload files
12758		//
12759		// Use cURL's supported protocols to upload files
12760		"task"!: null | bool | number | =~"^cURLUploader@2$" | [...] | {
12761			...
12762		}
12763
12764		// cURL upload files inputs
12765		"inputs"!: null | bool | number | string | [...] | close({
12766			// Files
12767			"files"!: string
12768
12769			// Authentication Method
12770			"authType"?: "ServiceEndpoint" | "UserAndPass"
12771
12772			// Service Connection
12773			"serviceEndpoint"?: string
12774
12775			// Username
12776			"username"?: string
12777
12778			// Password
12779			"password"?: string
12780
12781			// URL
12782			"url"?: string
12783
12784			// Remote Directory
12785			"remotePath"?: string
12786
12787			// Optional Arguments
12788			"options"?: string
12789
12790			// Redirect Standard Error to Standard Out
12791			"redirectStderr"?: bool
12792		})
12793		...
12794	}, {
12795		// Azure App Service Settings
12796		//
12797		// Update/Add App settings an Azure Web App for Linux or Windows
12798		"task"!: null | bool | number | =~"^AzureAppServiceSettings@1$" | [...] | {
12799			...
12800		}
12801
12802		// Azure App Service Settings inputs
12803		"inputs"!: null | bool | number | string | [...] | close({
12804			// Azure subscription
12805			"azureSubscription"!: string
12806
12807			// App Service name
12808			"appName"!: string
12809
12810			// Resource group
12811			"resourceGroupName"!: string
12812
12813			// Slot
12814			"slotName"?: string
12815
12816			// App settings
12817			"appSettings"?: string
12818
12819			// General settings
12820			"generalSettings"?: string
12821
12822			// Connection Strings
12823			"connectionStrings"?: string
12824		})
12825		...
12826	}, {
12827		// Universal packages
12828		//
12829		// Download or publish Universal Packages
12830		"task"!: null | bool | number | =~"^UniversalPackages@0$" | [...] | {
12831			...
12832		}
12833
12834		// Universal packages inputs
12835		"inputs"?: null | bool | number | string | [...] | close({
12836			// Command
12837			"command"?: "download" | "publish"
12838
12839			// Destination directory
12840			"downloadDirectory"?: string
12841
12842			// Feed location
12843			"feedsToUse"?: "internal" | "external"
12844
12845			// organization/collection connection
12846			"externalFeedCredentials"?: string
12847
12848			// Feed
12849			"vstsFeed"?: string
12850
12851			// Package name
12852			"vstsFeedPackage"?: string
12853
12854			// Version
12855			"vstsPackageVersion"?: string
12856
12857			// Feed (or Project/Feed if the feed was created in a project)
12858			"feedDownloadExternal"?: string
12859
12860			// Package name
12861			"packageDownloadExternal"?: string
12862
12863			// Version
12864			"versionDownloadExternal"?: string
12865
12866			// Path to file(s) to publish
12867			"publishDirectory"?: string
12868
12869			// Feed location
12870			"feedsToUsePublish"?: "internal" | "external"
12871
12872			// organization/collection connection
12873			"publishFeedCredentials"?: string
12874
12875			// Destination Feed
12876			"vstsFeedPublish"?: string
12877
12878			// Publish pipeline metadata
12879			"publishPackageMetadata"?: bool
12880
12881			// Package name
12882			"vstsFeedPackagePublish"?: string
12883
12884			// Feed (or Project/Feed if the feed was created in a project)
12885			"feedPublishExternal"?: string
12886
12887			// Package name
12888			"packagePublishExternal"?: string
12889
12890			// Version
12891			"versionOption"?: "major" | "minor" | "patch" | "custom"
12892
12893			// Custom version
12894			"versionPublish"?: string
12895
12896			// Description
12897			"packagePublishDescription"?: string
12898
12899			// Verbosity
12900			"verbosity"?: "None" | "Trace" | "Debug" | "Information" | "Warning" | "Error" | "Critical"
12901
12902			// Package Output Variable
12903			"publishedPackageVar"?: string
12904		})
12905		...
12906	}, {
12907		// Check Azure Policy compliance
12908		//
12909		// Security and compliance assessment for Azure Policy
12910		"task"!: null | bool | number | =~"^AzurePolicyCheckGate@0$" | [...] | {
12911			...
12912		}
12913
12914		// Check Azure Policy compliance inputs
12915		"inputs"!: null | bool | number | string | [...] | close({
12916			// Azure subscription
12917			"azureSubscription"!: string
12918
12919			// Resource group
12920			"ResourceGroupName"?: string
12921
12922			// Resource name
12923			"Resources"?: string
12924
12925			// Retry duration
12926			"RetryDuration"?: string
12927		})
12928		...
12929	}, {
12930		// Azure Function on Kubernetes
12931		//
12932		// Deploy Azure function to Kubernetes cluster.
12933		"task"!: null | bool | number | =~"^AzureFunctionOnKubernetes@0$" | [...] | {
12934			...
12935		}
12936
12937		// Azure Function on Kubernetes inputs
12938		"inputs"!: null | bool | number | string | [...] | close({
12939			// Docker registry service connection
12940			"dockerRegistryServiceConnection"!: string
12941
12942			// Kubernetes service connection
12943			"kubernetesServiceConnection"!: string
12944
12945			// Kubernetes namespace
12946			"namespace"?: string
12947
12948			// Secret Name
12949			"secretName"?: string
12950
12951			// Docker Hub namespace
12952			"dockerHubNamespace"?: string
12953
12954			// Application Name
12955			"appName"!: string
12956
12957			// Function root directory
12958			"functionRootDirectory"?: string
12959
12960			// Wait for stability
12961			"waitForStability"?: bool
12962
12963			// Arguments
12964			"arguments"?: string
12965		})
12966		...
12967	}, {
12968		// Azure Function on Kubernetes
12969		//
12970		// Deploy Azure function to Kubernetes cluster.
12971		"task"!: null | bool | number | =~"^AzureFunctionOnKubernetes@1$" | [...] | {
12972			...
12973		}
12974
12975		// Azure Function on Kubernetes inputs
12976		"inputs"!: null | bool | number | string | [...] | close({
12977			// Service connection type
12978			"connectionType"?: "Azure Resource Manager" | "Kubernetes Service Connection"
12979
12980			// Docker registry service connection
12981			"dockerRegistryServiceConnection"!: string
12982
12983			// Kubernetes service connection
12984			"kubernetesServiceConnection"?: string
12985
12986			// Azure subscription
12987			"azureSubscriptionConnection"?: string
12988
12989			// Resource group
12990			"azureResourceGroup"?: string
12991
12992			// Kubernetes cluster
12993			"kubernetesCluster"?: string
12994
12995			// Kubernetes namespace
12996			"namespace"?: string
12997
12998			// Secret Name
12999			"secretName"?: string
13000
13001			// Docker Hub namespace
13002			"dockerHubNamespace"?: string
13003
13004			// Application Name
13005			"appName"!: string
13006
13007			// Function root directory
13008			"functionRootDirectory"?: string
13009
13010			// Wait for stability
13011			"waitForStability"?: bool
13012
13013			// Arguments
13014			"arguments"?: string
13015		})
13016		...
13017	}, {
13018		// Shell script
13019		//
13020		// Run a shell script using Bash
13021		"task"!: null | bool | number | =~"^ShellScript@2$" | [...] | {
13022			...
13023		}
13024
13025		// Shell script inputs
13026		"inputs"!: null | bool | number | string | [...] | close({
13027			// Script Path
13028			"scriptPath"!: string
13029
13030			// Arguments
13031			"args"?: string
13032
13033			// Specify Working Directory
13034			"disableAutoCwd"?: bool
13035
13036			// Working Directory
13037			"cwd"?: string
13038
13039			// Fail on Standard Error
13040			"failOnStandardError"?: bool
13041		})
13042		...
13043	}, {
13044		// Bash
13045		//
13046		// Run a Bash script on macOS, Linux, or Windows
13047		"task"!: null | bool | number | =~"^Bash@3$" | [...] | {
13048			...
13049		}
13050
13051		// Bash inputs
13052		"inputs"?: null | bool | number | string | [...] | close({
13053			// Type
13054			"targetType"?: "filePath" | "inline"
13055
13056			// Script Path
13057			"filePath"?: string
13058
13059			// Arguments
13060			"arguments"?: string
13061
13062			// Script
13063			"script"?: string
13064
13065			// Working Directory
13066			"workingDirectory"?: string
13067
13068			// Fail on Standard Error
13069			"failOnStderr"?: bool
13070
13071			// Set value for BASH_ENV environment variable
13072			"bashEnvValue"?: string
13073		})
13074		...
13075	}, {
13076		// Publish build artifacts
13077		//
13078		// Publish build artifacts to Azure Pipelines or a Windows file
13079		// share
13080		"task"!: null | bool | number | =~"^PublishBuildArtifacts@1$" | [...] | {
13081			...
13082		}
13083
13084		// Publish build artifacts inputs
13085		"inputs"?: null | bool | number | string | [...] | close({
13086			// Path to publish
13087			"PathtoPublish"?: string
13088
13089			// Artifact name
13090			"ArtifactName"?: string
13091
13092			// Artifact publish location
13093			"publishLocation"?: "Container" | "FilePath"
13094
13095			// Max Artifact Size
13096			"MaxArtifactSize"?: int
13097
13098			// File share path
13099			"TargetPath"?: string
13100
13101			// Parallel copy
13102			"Parallel"?: bool
13103
13104			// Parallel count
13105			"ParallelCount"?: int
13106
13107			// Tar the artifact before uploading
13108			"StoreAsTar"?: bool
13109		})
13110		...
13111	}, {
13112		// Install SSH key
13113		//
13114		// Install an SSH key prior to a build or deployment
13115		"task"!: null | bool | number | =~"^InstallSSHKey@0$" | [...] | {
13116			...
13117		}
13118
13119		// Install SSH key inputs
13120		"inputs"!: null | bool | number | string | [...] | close({
13121			// Known Hosts Entry
13122			"knownHostsEntry"!: string
13123
13124			// SSH Public Key
13125			"sshPublicKey"?: string
13126
13127			// SSH Passphrase
13128			"sshPassphrase"?: string
13129
13130			// SSH Key
13131			"sshKeySecureFile"!: string
13132
13133			// Add entry to SSH config
13134			"addEntryToConfig"?: bool
13135
13136			// Alias
13137			"configHostAlias"?: string
13138
13139			// Host name
13140			"configHostname"?: string
13141
13142			// User
13143			"configUser"?: string
13144
13145			// Port
13146			"configPort"?: string
13147		})
13148		...
13149	}, {
13150		// Azure VM scale set deployment
13151		//
13152		// Deploy a virtual machine scale set image
13153		"task"!: null | bool | number | =~"^AzureVmssDeployment@0$" | [...] | {
13154			...
13155		}
13156
13157		// Azure VM scale set deployment inputs
13158		"inputs"!: null | bool | number | string | [...] | close({
13159			// Azure subscription
13160			"azureSubscription"!: string
13161
13162			// Action
13163			"action"?: "Update image" | "Configure application startup"
13164
13165			// Virtual Machine scale set name
13166			"vmssName"!: string
13167
13168			// OS type
13169			"vmssOsType"!: "Windows" | "Linux"
13170
13171			// Image URL
13172			"imageUrl"!: string
13173
13174			// Custom script directory
13175			"customScriptsDirectory"?: string
13176
13177			// Command
13178			"customScript"?: string
13179
13180			// Arguments
13181			"customScriptArguments"?: string
13182
13183			// Azure storage account where custom scripts will be uploaded
13184			"customScriptsStorageAccount"?: string
13185
13186			// Skip Archiving custom scripts
13187			"skipArchivingCustomScripts"?: bool
13188		})
13189		...
13190	}, {
13191		// Azure VM scale set deployment
13192		//
13193		// Deploy a virtual machine scale set image
13194		"task"!: null | bool | number | =~"^AzureVmssDeployment@1$" | [...] | {
13195			...
13196		}
13197
13198		// Azure VM scale set deployment inputs
13199		"inputs"!: null | bool | number | string | [...] | close({
13200			// Azure subscription
13201			"azureSubscription"!: string
13202
13203			// Action
13204			"action"?: "Update image" | "Configure application startup"
13205
13206			// Virtual Machine scale set name
13207			"vmssName"!: string
13208
13209			// OS type
13210			"vmssOsType"!: "Windows" | "Linux"
13211
13212			// Image URL
13213			"imageUrl"!: string
13214
13215			// Custom script directory
13216			"customScriptsDirectory"?: string
13217
13218			// Command
13219			"customScript"?: string
13220
13221			// Arguments
13222			"customScriptArguments"?: string
13223
13224			// Azure storage account where custom scripts will be uploaded
13225			"customScriptsStorageAccount"?: string
13226
13227			// Skip Archiving custom scripts
13228			"skipArchivingCustomScripts"?: bool
13229		})
13230		...
13231	}, {
13232		// Azure App Service: Classic (Deprecated)
13233		//
13234		// Create or update Azure App Service using Azure PowerShell
13235		"task"!: null | bool | number | =~"^AzureWebPowerShellDeployment@1$" | [...] | {
13236			...
13237		}
13238
13239		// Azure App Service: Classic (Deprecated) inputs
13240		"inputs"!: null | bool | number | string | [...] | close({
13241			// Azure Subscription (Classic)
13242			"ConnectedServiceName"!: string
13243
13244			// Web App Location
13245			"WebSiteLocation"!: string
13246
13247			// Web App Name
13248			"WebSiteName"!: string
13249
13250			// Slot
13251			"Slot"?: string
13252
13253			// Web Deploy Package
13254			"Package"!: string
13255
13256			// Set DoNotDelete flag
13257			"doNotDelete"?: bool
13258
13259			// Additional Arguments
13260			"AdditionalArguments"?: string
13261		})
13262		...
13263	}, {
13264		// Conda authenticate (for task runners)
13265		//
13266		// Authentication task for the conda client
13267		"task"!: null | bool | number | =~"^CondaAuthenticate@0$" | [...] | {
13268			...
13269		}
13270
13271		// Conda authenticate (for task runners) inputs
13272		"inputs"?: null | bool | number | string | [...] | close({
13273			// 'Azure DevOps' Service Connection
13274			"azureDevOpsServiceConnection"?: string
13275		})
13276		...
13277	}, {
13278		// Azure Cloud Service deployment
13279		//
13280		// Deploy an Azure Cloud Service
13281		"task"!: null | bool | number | =~"^AzureCloudPowerShellDeployment@2$" | [...] | {
13282			...
13283		}
13284
13285		// Azure Cloud Service deployment inputs
13286		"inputs"!: null | bool | number | string | [...] | close({
13287			// Azure subscription (ARM)
13288			"ARMConnectedServiceName"!: string
13289
13290			// Resource group
13291			"ResourceGroupName"!: string
13292
13293			// Storage account (ARM)
13294			"ARMStorageAccount"!: string
13295
13296			// Service name
13297			"ServiceName"!: string
13298
13299			// Service location
13300			"ServiceLocation"!: string
13301
13302			// CsCfg
13303			"CsCfg"!: string
13304
13305			// CsDef
13306			"CsDef"!: string
13307
13308			// CsPkg
13309			"CsPkg"!: string
13310
13311			// Azure KeyVault
13312			"KeyVault"?: string
13313
13314			// Deployment label
13315			"DeploymentLabel"?: string
13316
13317			// Append current date and time
13318			"AppendDateTimeToLabel"?: bool
13319
13320			// Update mode for the cloud service
13321			"UpgradeMode"?: string
13322
13323			// Allow upgrade
13324			"AllowUpgrade"?: bool
13325
13326			// Verify role instance status
13327			"VerifyRoleInstanceStatus"?: bool
13328
13329			// Diagnostic storage account keys
13330			"DiagnosticStorageAccountKeys"?: string
13331		})
13332		...
13333	}, {
13334		// Azure Cloud Service deployment
13335		//
13336		// Deploy an Azure Cloud Service
13337		"task"!: null | bool | number | =~"^AzureCloudPowerShellDeployment@1$" | [...] | {
13338			...
13339		}
13340
13341		// Azure Cloud Service deployment inputs
13342		"inputs"!: null | bool | number | string | [...] | close({
13343			// Azure subscription (Classic)
13344			"azureClassicSubscription"!: string
13345
13346			// Enable ARM storage support
13347			"EnableAdvancedStorageOptions"?: bool
13348
13349			// Storage account (Classic)
13350			"StorageAccount"?: string
13351
13352			// Azure subscription (ARM)
13353			"ARMConnectedServiceName"?: string
13354
13355			// Storage account (ARM)
13356			"ARMStorageAccount"?: string
13357
13358			// Service name
13359			"ServiceName"!: string
13360
13361			// Service location
13362			"ServiceLocation"!: string
13363
13364			// CsPkg
13365			"CsPkg"!: string
13366
13367			// CsCfg
13368			"CsCfg"!: string
13369
13370			// Environment (Slot)
13371			"slotName"?: string
13372
13373			// Deployment label
13374			"DeploymentLabel"?: string
13375
13376			// Append current date and time
13377			"AppendDateTimeToLabel"?: bool
13378
13379			// Allow upgrade
13380			"AllowUpgrade"?: bool
13381
13382			// Simultaneous upgrade
13383			"SimultaneousUpgrade"?: bool
13384
13385			// Force upgrade
13386			"ForceUpgrade"?: bool
13387
13388			// Verify role instance status
13389			"VerifyRoleInstanceStatus"?: bool
13390
13391			// Diagnostic storage account keys
13392			"DiagnosticStorageAccountKeys"?: string
13393
13394			// Custom certificates to import
13395			"NewServiceCustomCertificates"?: string
13396
13397			// Additional arguments
13398			"NewServiceAdditionalArguments"?: string
13399
13400			// Affinity group
13401			"NewServiceAffinityGroup"?: string
13402		})
13403		...
13404	}, {
13405		// Cargo authenticate (for task runners)
13406		//
13407		// Authentication task for the cargo client used for installing
13408		// Cargo crates distribution
13409		"task"!: null | bool | number | =~"^CargoAuthenticate@0$" | [...] | {
13410			...
13411		}
13412
13413		// Cargo authenticate (for task runners) inputs
13414		"inputs"!: null | bool | number | string | [...] | close({
13415			// 'Azure DevOps' Service Connection
13416			"azureDevOpsServiceConnection"?: string
13417
13418			// Registry names from config.toml
13419			"registryNames"?: string
13420
13421			// config.toml file to authenticate
13422			"configFile"!: string
13423
13424			// Credentials for registries outside this organization/collection
13425			"cargoServiceConnections"?: string
13426		})
13427		...
13428	}, {
13429		// Delete files
13430		//
13431		// Delete folders, or files matching a pattern
13432		"task"!: null | bool | number | =~"^DeleteFiles@1$" | [...] | {
13433			...
13434		}
13435
13436		// Delete files inputs
13437		"inputs"?: null | bool | number | string | [...] | close({
13438			// Source Folder
13439			"SourceFolder"?: string
13440
13441			// Contents
13442			"Contents"?: string
13443
13444			// Remove SourceFolder
13445			"RemoveSourceFolder"?: bool
13446
13447			// Remove files starting with a dot
13448			"RemoveDotFiles"?: bool
13449		})
13450		...
13451	}, {
13452		// gulp
13453		//
13454		// Run the gulp Node.js streaming task-based build system
13455		"task"!: null | bool | number | =~"^gulp@0$" | [...] | {
13456			...
13457		}
13458
13459		// gulp inputs
13460		"inputs"?: null | bool | number | string | [...] | close({
13461			// gulp File Path
13462			"gulpFile"?: string
13463
13464			// gulp Task(s)
13465			"targets"?: string
13466
13467			// Arguments
13468			"arguments"?: string
13469
13470			// Working Directory
13471			"workingDirectory"?: string
13472
13473			// gulp.js location
13474			"gulpjs"?: string
13475
13476			// Publish to Azure Pipelines
13477			"publishJUnitResults"?: bool
13478
13479			// Test Results Files
13480			"testResultsFiles"?: string
13481
13482			// Test Run Title
13483			"testRunTitle"?: string
13484
13485			// Enable code Coverage
13486			"enableCodeCoverage"?: bool
13487
13488			// Test Framework
13489			"testFramework"?: "Mocha" | "Jasmine"
13490
13491			// Source Files
13492			"srcFiles"?: string
13493
13494			// Test Script Files
13495			"testFiles"?: string
13496		})
13497		...
13498	}, {
13499		// gulp
13500		//
13501		// Run the gulp Node.js streaming task-based build system
13502		"task"!: null | bool | number | =~"^gulp@1$" | [...] | {
13503			...
13504		}
13505
13506		// gulp inputs
13507		"inputs"?: null | bool | number | string | [...] | close({
13508			// gulp File Path
13509			"gulpFile"?: string
13510
13511			// gulp Task(s)
13512			"targets"?: string
13513
13514			// Arguments
13515			"arguments"?: string
13516
13517			// Working Directory
13518			"workingDirectory"?: string
13519
13520			// gulp.js location
13521			"gulpjs"?: string
13522
13523			// Publish to Azure Pipelines
13524			"publishJUnitResults"?: bool
13525
13526			// Test Results Files
13527			"testResultsFiles"?: string
13528
13529			// Test Run Title
13530			"testRunTitle"?: string
13531
13532			// Enable code Coverage
13533			"enableCodeCoverage"?: bool
13534
13535			// Test Framework
13536			"testFramework"?: "Mocha" | "Jasmine"
13537
13538			// Source Files
13539			"srcFiles"?: string
13540
13541			// Test Script Files
13542			"testFiles"?: string
13543		})
13544		...
13545	}, {
13546		// IIS web app manage
13547		//
13548		// Create or update websites, web apps, virtual directories, or
13549		// application pools
13550		"task"!: null | bool | number | =~"^IISWebAppManagementOnMachineGroup@0$" | [...] | {
13551			...
13552		}
13553
13554		// IIS web app manage inputs
13555		"inputs"!: null | bool | number | string | [...] | close({
13556			// Enable IIS
13557			"EnableIIS"?: bool
13558
13559			// Configuration type
13560			"IISDeploymentType"?: "IISWebsite" | "IISWebApplication" | "IISVirtualDirectory" | "IISApplicationPool"
13561
13562			// Action
13563			"ActionIISWebsite"?: "CreateOrUpdateWebsite" | "StartWebsite" | "StopWebsite"
13564
13565			// Action
13566			"ActionIISApplicationPool"?: "CreateOrUpdateAppPool" | "StartAppPool" | "StopAppPool" | "RecycleAppPool"
13567
13568			// Website name
13569			"StartStopWebsiteName"?: string
13570
13571			// Website name
13572			"WebsiteName"!: string
13573
13574			// Physical path
13575			"WebsitePhysicalPath"?: string
13576
13577			// Physical path authentication
13578			"WebsitePhysicalPathAuth"?: "WebsiteUserPassThrough" | "WebsiteWindowsAuth"
13579
13580			// Username
13581			"WebsiteAuthUserName"?: string
13582
13583			// Password
13584			"WebsiteAuthUserPassword"?: string
13585
13586			// Add binding
13587			"AddBinding"?: bool
13588
13589			// Protocol
13590			"Protocol"?: "https" | "http"
13591
13592			// IP address
13593			"IPAddress"?: string
13594
13595			// Port
13596			"Port"?: string
13597
13598			// Server Name Indication required
13599			"ServerNameIndication"?: bool
13600
13601			// Host name
13602			"HostNameWithOutSNI"?: string
13603
13604			// Host name
13605			"HostNameWithHttp"?: string
13606
13607			// Host name
13608			"HostNameWithSNI"?: string
13609
13610			// SSL certificate thumbprint
13611			"SSLCertThumbPrint"?: string
13612
13613			// Add bindings
13614			"Bindings"!: string
13615
13616			// Create or update app pool
13617			"CreateOrUpdateAppPoolForWebsite"?: bool
13618
13619			// Configure authentication
13620			"ConfigureAuthenticationForWebsite"?: bool
13621
13622			// Name
13623			"AppPoolNameForWebsite"!: string
13624
13625			// .NET version
13626			"DotNetVersionForWebsite"?: "v4.0" | "v2.0" | "No Managed Code"
13627
13628			// Managed pipeline mode
13629			"PipeLineModeForWebsite"?: "Integrated" | "Classic"
13630
13631			// Identity
13632			"AppPoolIdentityForWebsite"?: "ApplicationPoolIdentity" | "LocalService" | "LocalSystem" | "NetworkService" | "SpecificUser"
13633
13634			// Username
13635			"AppPoolUsernameForWebsite"?: string
13636
13637			// Password
13638			"AppPoolPasswordForWebsite"?: string
13639
13640			// Anonymous authentication
13641			"AnonymousAuthenticationForWebsite"?: bool
13642
13643			// Basic authentication
13644			"BasicAuthenticationForWebsite"?: bool
13645
13646			// Windows authentication
13647			"WindowsAuthenticationForWebsite"?: bool
13648
13649			// Parent website name
13650			"ParentWebsiteNameForVD"!: string
13651
13652			// Virtual path
13653			"VirtualPathForVD"!: string
13654
13655			// Physical path
13656			"PhysicalPathForVD"?: string
13657
13658			// Physical path authentication
13659			"VDPhysicalPathAuth"?: "VDUserPassThrough" | "VDWindowsAuth"
13660
13661			// Username
13662			"VDAuthUserName"?: string
13663
13664			// Password
13665			"VDAuthUserPassword"?: string
13666
13667			// Parent website name
13668			"ParentWebsiteNameForApplication"!: string
13669
13670			// Virtual path
13671			"VirtualPathForApplication"!: string
13672
13673			// Physical path
13674			"PhysicalPathForApplication"?: string
13675
13676			// Physical path authentication
13677			"ApplicationPhysicalPathAuth"?: "ApplicationUserPassThrough" | "ApplicationWindowsAuth"
13678
13679			// Username
13680			"ApplicationAuthUserName"?: string
13681
13682			// Password
13683			"ApplicationAuthUserPassword"?: string
13684
13685			// Create or update app pool
13686			"CreateOrUpdateAppPoolForApplication"?: bool
13687
13688			// Name
13689			"AppPoolNameForApplication"!: string
13690
13691			// .NET version
13692			"DotNetVersionForApplication"?: "v4.0" | "v2.0" | "No Managed Code"
13693
13694			// Managed pipeline mode
13695			"PipeLineModeForApplication"?: "Integrated" | "Classic"
13696
13697			// Identity
13698			"AppPoolIdentityForApplication"?: "ApplicationPoolIdentity" | "LocalService" | "LocalSystem" | "NetworkService" | "SpecificUser"
13699
13700			// Username
13701			"AppPoolUsernameForApplication"?: string
13702
13703			// Password
13704			"AppPoolPasswordForApplication"?: string
13705
13706			// Name
13707			"AppPoolName"!: string
13708
13709			// .NET version
13710			"DotNetVersion"?: "v4.0" | "v2.0" | "No Managed Code"
13711
13712			// Managed pipeline mode
13713			"PipeLineMode"?: "Integrated" | "Classic"
13714
13715			// Identity
13716			"AppPoolIdentity"?: "ApplicationPoolIdentity" | "LocalService" | "LocalSystem" | "NetworkService" | "SpecificUser"
13717
13718			// Username
13719			"AppPoolUsername"?: string
13720
13721			// Password
13722			"AppPoolPassword"?: string
13723
13724			// Application pool name
13725			"StartStopRecycleAppPoolName"?: string
13726
13727			// Additional appcmd.exe commands
13728			"AppCmdCommands"?: string
13729		})
13730		...
13731	}, {
13732		// Docker CLI installer
13733		//
13734		// Install Docker CLI on agent machine.
13735		"task"!: null | bool | number | =~"^DockerInstaller@0$" | [...] | {
13736			...
13737		}
13738
13739		// Docker CLI installer inputs
13740		"inputs"?: null | bool | number | string | [...] | close({
13741			// Docker Version
13742			"dockerVersion"?: string
13743
13744			// Release type
13745			"releaseType"?: "stable" | "edge" | "test" | "nightly"
13746		})
13747		...
13748	}]) & close({
13749		"task"?: matchN(>=1, ["PowerShell@2", "PowerShell@1", "AzurePowerShell@5", "AzurePowerShell@4", "AzurePowerShell@1", "AzurePowerShell@5", "AzurePowerShell@2", "MysqlDeploymentOnMachineGroup@1", "PipAuthenticate@1", "PipAuthenticate@0", "Maven@4", "Maven@2", "Maven@3", "Maven@1", "DotNetCoreCLI@2", "DotNetCoreCLI@0", "DotNetCoreCLI@1", "XamarinComponentRestore@0", "AzureRmWebAppDeployment@4", "AzureRmWebAppDeployment@2", "AzureRmWebAppDeployment@5", "AzureRmWebAppDeployment@3", "PowerShellOnTargetMachines@3", "PowerShellOnTargetMachines@1", "PowerShellOnTargetMachines@2", "PowerShellOnTargetMachines@2", "PublishCodeCoverageResults@2", "PublishCodeCoverageResults@1", "RunVisualStudioTestsusingTestAgent@1", "ManualIntervention@8", "InstallAppleProvisioningProfile@1", "InstallAppleProvisioningProfile@0", "SonarQubePostTest@1", "PyPIPublisher@0", "ChefKnife@1", "GoTool@0", "XcodePackageiOS@0", "Go@0", "PublishPipelineMetadata@0", "Docker@0", "Docker@2", "Docker@1", "JenkinsQueueJob@1", "JenkinsQueueJob@2", "FtpUpload@2", "FtpUpload@1", "WindowsMachineFileCopy@2", "WindowsMachineFileCopy@1", "AndroidBuild@1", "TwineAuthenticate@1", "TwineAuthenticate@0", "IISWebAppDeploymentOnMachineGroup@0", "PythonScript@0", "HelmInstaller@0", "HelmInstaller@1", "NodeTaskRunnerInstaller@0", "XamarinLicense@1", "NuGetAuthenticate@0", "NuGetAuthenticate@1", "DownloadGitHubNugetPackage@1", "MavenAuthenticate@0", "AzureAppConfigurationExport@10", "ReviewApp@0", "JavaToolInstaller@0", "JavaToolInstaller@1", "Chef@1", "AzureFunctionApp@1", "AzureFunctionApp@2", "npmAuthenticate@0", "MSBuild@1", "PackerBuild@0", "PackerBuild@1", "NuGetPackager@0", "AzureAppConfigurationSnapshot@1", "DuffleInstaller@0", "ServiceFabricUpdateAppVersions@1", "ServiceFabricUpdateManifests@2", "AzureMonitor@1", "AzureMonitor@0", "Notation@0", "AzureNLBManagement@1", "DockerCompose@0", "DockerCompose@1", "AzureMonitorAlerts@0", "XamarinTestCloud@1", "ServiceFabricDeploy@1", "Xcode@5", "Xcode@3", "Xcode@4", "Xcode@2", "NuGetPublisher@0", "queryWorkItems@0", "AzureWebAppContainer@1", "SqlDacpacDeploymentOnMachineGroup@0", "CacheBeta@1", "CacheBeta@0", "Cache@2", "CMake@1", "VSMobileCenterTest@0", "AppCenterTest@1", "DownloadSecureFile@1", "AzureContainerApps@0", "AzureContainerApps@1", "UseRubyVersion@0", "Grunt@0", "SqlAzureDacpacDeployment@1", "ContainerStructureTest@0", "IISWebAppDeployment@1", "KubectlInstaller@0", "CmdLine@2", "CmdLine@1", "NuGet@0", "ContainerBuild@0", "NuGetInstaller@0", "NuGetRestore@1", "NuGetCommand@2", "Delay@1", "XamariniOS@1", "XamariniOS@2", "PublishTestResults@2", "PublishTestResults@1", "AzureFileCopy@6", "AzureFileCopy@4", "AzureFileCopy@5", "AzureFileCopy@2", "AzureFileCopy@3", "AzureFileCopy@1", "PublishSymbols@2", "PublishSymbols@1", "CopyFilesOverSSH@0", "Gradle@2", "Gradle@3", "Gradle@4", "Gradle@1", "AzureTestPlan@0", "AppCenterDistribute@1", "AppCenterDistribute@2", "AppCenterDistribute@3", "AppCenterDistribute@0", "NuGetToolInstaller@0", "NuGetToolInstaller@1", "JenkinsDownloadArtifacts@2", "JenkinsDownloadArtifacts@1", "JenkinsDownloadArtifacts@2", "AzureFunctionAppContainer@1", "DecryptFile@1", "HelmDeploy@1", "HelmDeploy@0", "InstallAppleCertificate@2", "InstallAppleCertificate@1", "InstallAppleCertificate@0", "AzureFunction@1", "AzureFunction@0", "OpenPolicyAgentInstaller@0", "DownloadGitHubRelease@0", "SSH@0", "PublishPipelineArtifact@0", "PublishPipelineArtifact@1", "SonarQubePreBuild@1", "DownloadFileshareArtifacts@1", "Kubernetes@1", "Kubernetes@0", "AzureIoTEdge@2", "ServiceFabricComposeDeploy@0", "AndroidSigning@1", "AndroidSigning@2", "AndroidSigning@3", "DownloadPipelineArtifact@0", "DownloadPipelineArtifact@2", "DownloadPipelineArtifact@1", "UsePythonVersion@0", "ServiceFabricPowerShell@1", "VSTest@2", "VSTest@3", "VSTest@1", "ManualValidation@1", "ManualValidation@0", "Ant@1", "DeployVisualStudioTestAgent@2", "DeployVisualStudioTestAgent@1", "CondaEnvironment@0", "CondaEnvironment@1", "BatchScript@1", "DownloadGithubNpmPackage@1", "VSBuild@1", "AzureKeyVault@1", "AzureKeyVault@2", "UseDotNet@2", "DotNetCoreInstaller@0", "DotNetCoreInstaller@1", "UseDotNet@2", "AzureAppConfigurationImport@10", "AzureAppServiceManage@0", "KubeloginInstaller@0", "FuncToolsInstaller@0", "FileTransform@2", "FileTransform@1", "ExtractFiles@1", "XamarinAndroid@1", "CopyPublishBuildArtifacts@1", "DownloadPackage@0", "DownloadPackage@1", "AzureResourceGroupDeployment@1", "AzureResourceGroupDeployment@2", "AzureResourceManagerTemplateDeployment@3", "InvokeRESTAPI@0", "InvokeRESTAPI@1", "ArchiveFiles@1", "ArchiveFiles@2", "GitHubComment@0", "CopyFiles@2", "CopyFiles@1", "AzureMysqlDeployment@1", "Npm@1", "Npm@0", "AzureStaticWebApp@0", "UseNode@1", "NodeTool@0", "SqlServerDacpacDeployment@1", "VisualStudioTestPlatformInstaller@1", "PublishToAzureServiceBus@1", "PublishToAzureServiceBus@2", "PublishToAzureServiceBus@0", "KubernetesManifest@0", "KubernetesManifest@1", "DownloadBuildArtifacts@0", "DownloadBuildArtifacts@1", "CocoaPods@0", "AzureSpringCloud@0", "AzureWebApp@1", "AzureCLI@1", "AzureCLI@2", "AzureCLI@0", "AzureCLI@2", "GitHubRelease@1", "GitHubRelease@0", "cURLUploader@1", "cURLUploader@2", "AzureAppServiceSettings@1", "UniversalPackages@0", "AzurePolicyCheckGate@0", "AzureFunctionOnKubernetes@0", "AzureFunctionOnKubernetes@1", "ShellScript@2", "Bash@3", "PublishBuildArtifacts@1", "InstallSSHKey@0", "AzureVmssDeployment@0", "AzureVmssDeployment@1", "AzureWebPowerShellDeployment@1", "CondaAuthenticate@0", "AzureCloudPowerShellDeployment@2", "AzureCloudPowerShellDeployment@1", "CargoAuthenticate@0", "DeleteFiles@1", "gulp@0", "gulp@1", "IISWebAppManagementOnMachineGroup@0", "DockerInstaller@0"])
13750
13751		// Human-readable name for the task
13752		"displayName"?: string
13753
13754		// ID of the task instance
13755		"name"?: =~"^[_A-Za-z0-9]*$"
13756
13757		// Evaluate this condition expression to determine whether to run
13758		// this task
13759		"condition"?: string
13760
13761		// Continue running the parent job even on failure?
13762		"continueOnError"?: bool
13763
13764		// Run this task when the job runs?
13765		"enabled"?: string
13766
13767		// Number of retries if the task fails
13768		"retryCountOnTaskFailure"?: int
13769
13770		// Time to wait for this task to complete before the server kills
13771		// it
13772		"timeoutInMinutes"?: int
13773
13774		// Task-specific inputs
13775		"inputs"?: {
13776			...
13777		}
13778
13779		// Variables to map into the process's environment
13780		"env"?: {
13781			...
13782		}
13783	})
13784
13785	#taskBase: close({
13786		"condition"?:               #string
13787		"continueOnError"?:         #boolean
13788		"displayName"?:             #string
13789		"target"?:                  #stepTarget
13790		"enabled"?:                 #boolean
13791		"env"?:                     #mappingOfStringString
13792		"name"?:                    #referenceName
13793		"timeoutInMinutes"?:        #nonEmptyString
13794		"retryCountOnTaskFailure"?: #string
13795	})
13796
13797	#tasks: [...#task]
13798
13799	#templateContext: {
13800		...
13801	}
13802
13803	#templateParameter: close({
13804		"name"?:        #nonEmptyString
13805		"displayName"?: #string
13806		"type"?:        #templateParameterType
13807		"default"?:     #any
13808		"values"?:      #sequenceOfNonEmptyString
13809	})
13810
13811	#templateParameterType: matchN(>=1, [=~"^boolean$", =~"^container$", =~"^containerList$", =~"^deployment$", =~"^deploymentList$", =~"^job$", =~"^jobList$", =~"^legacyObject$", =~"^number$", =~"^object$", =~"^stage$", =~"^stageList$", =~"^step$", =~"^stepList$", =~"^string$", =~"^stringList$"])
13812
13813	#templateParameters: matchN(>=1, [[...#templateParameter], {
13814		...
13815	}])
13816
13817	#trigger: matchN(>=1, [=~"^none$", [...#branchFilter], close({
13818		"batch"?:    #boolean
13819		"branches"?: #includeExcludeFilters
13820		"paths"?:    #includeExcludeFilters
13821		"tags"?:     #includeExcludeFilters
13822	})])
13823
13824	#triggerBranchFilter: matchN(>=1, [close({
13825		"include"?: #branchFilterArray
13826		"exclude"?: #branchFilterArray
13827	}), [...#branchFilter]])
13828
13829	#variable: matchN(>=1, [close({
13830		"name"?:     #nonEmptyString
13831		"value"?:    #string
13832		"readonly"?: #boolean
13833	}), close({
13834		"group"?: #nonEmptyString
13835	}), close({
13836		"template"?:   #nonEmptyString
13837		"parameters"?: #mapping
13838	})])
13839
13840	#variableRestrictions: matchN(>=1, [=~"^none$", [...#nonEmptyString]])
13841
13842	#variables: matchN(>=1, [{
13843		...
13844	}, [...#variable]])
13845
13846	#variablesTemplate: close({
13847		"parameters"?: #templateParameters
13848		"variables"?:  #variables
13849	})
13850
13851	#webhookFilter: close({
13852		"path"!:  #nonEmptyString
13853		"value"!: #nonEmptyString
13854	})
13855
13856	#webhookFilters: [...#webhookFilter]
13857
13858	#webhookResource: close({
13859		"webhook"!:    #referenceName
13860		"connection"!: #nonEmptyString
13861		"type"?:       #nonEmptyString
13862		"filters"?:    #webhookFilters
13863	})
13864
13865	#webhookResources: [...#webhookResource]
13866}