UNPKG

azure-devops-node-api

Version:
2,035 lines 108 kB
import DistributedTaskCommonInterfaces = require("../interfaces/DistributedTaskCommonInterfaces"); import FormInputInterfaces = require("../interfaces/common/FormInputInterfaces"); import VSSInterfaces = require("../interfaces/common/VSSInterfaces"); export interface AgentArtifactDefinition { /** * Gets or sets the artifact definition alias. */ alias?: string; /** * Gets or sets the artifact type. */ artifactType?: AgentArtifactType; /** * Gets or sets the artifact definition details. */ details?: string; /** * Gets or sets the name of artifact definition. */ name?: string; /** * Gets or sets the version of artifact definition. */ version?: string; } export declare enum AgentArtifactType { /** * Indicates XamlBuild artifact */ XamlBuild = 0, /** * Indicates Build artifact */ Build = 1, /** * Indicates Jenkins artifact */ Jenkins = 2, /** * Indicates FileShare artifact */ FileShare = 3, /** * Indicates Nuget artifact */ Nuget = 4, /** * Indicates TfsOnPrem artifact */ TfsOnPrem = 5, /** * Indicates GitHub artifact */ GitHub = 6, /** * Indicates TFGit artifact */ TFGit = 7, /** * Indicates ExternalTfsBuild artifact */ ExternalTfsBuild = 8, /** * Indicates Custom artifact */ Custom = 9, /** * Indicates Tfvc artifact */ Tfvc = 10 } export interface AgentBasedDeployPhase extends DeployPhase { /** * Gets and sets the agent job deployment input */ deploymentInput?: AgentDeploymentInput; } export interface AgentDeploymentInput extends DeploymentInput { /** * Specification for an agent on which a job gets executed. */ agentSpecification?: AgentSpecification; /** * Gets or sets the image ID. */ imageId?: number; /** * Gets or sets the parallel execution input. */ parallelExecution?: ExecutionInput; } /** * Represents a reference to an agent queue. */ export interface AgentPoolQueueReference extends ResourceReference { /** * The ID of the queue. */ id?: number; } /** * Specification of the agent defined by the pool provider. */ export interface AgentSpecification { /** * Agent specification unique identifier. */ identifier?: string; } export declare enum ApprovalExecutionOrder { /** * Approvals shown before gates. */ BeforeGates = 1, /** * Approvals shown after successful execution of gates. */ AfterSuccessfulGates = 2, /** * Approvals shown always after execution of gates. */ AfterGatesAlways = 4 } export declare enum ApprovalFilters { /** * No approvals or approval snapshots. */ None = 0, /** * Manual approval steps but no approval snapshots (Use with ApprovalSnapshots for snapshots). */ ManualApprovals = 1, /** * Automated approval steps but no approval snapshots (Use with ApprovalSnapshots for snapshots). */ AutomatedApprovals = 2, /** * No approval steps, but approval snapshots (Use with either ManualApprovals or AutomatedApprovals for approval steps). */ ApprovalSnapshots = 4, /** * All approval steps and approval snapshots. */ All = 7 } export interface ApprovalOptions { /** * Specify whether the approval can be skipped if the same approver approved the previous stage. */ autoTriggeredAndPreviousEnvironmentApprovedCanBeSkipped?: boolean; /** * Specify whether revalidate identity of approver before completing the approval. */ enforceIdentityRevalidation?: boolean; /** * Approvals execution order. */ executionOrder?: ApprovalExecutionOrder; /** * Specify whether the user requesting a release or deployment should allow to approver. */ releaseCreatorCanBeApprover?: boolean; /** * The number of approvals required to move release forward. '0' means all approvals required. */ requiredApproverCount?: number; /** * Approval timeout. Approval default timeout is 30 days. Maximum allowed timeout is 365 days. '0' means default timeout i.e 30 days. */ timeoutInMinutes?: number; } export declare enum ApprovalStatus { /** * Indicates the approval does not have the status set. */ Undefined = 0, /** * Indicates the approval is pending. */ Pending = 1, /** * Indicates the approval is approved. */ Approved = 2, /** * Indicates the approval is rejected. */ Rejected = 4, /** * Indicates the approval is reassigned. */ Reassigned = 6, /** * Indicates the approval is canceled. */ Canceled = 7, /** * Indicates the approval is skipped. */ Skipped = 8 } export declare enum ApprovalType { /** * Indicates the approval type does not set. */ Undefined = 0, /** * Indicates the approvals which executed before deployment. */ PreDeploy = 1, /** * Indicates the approvals which executed after deployment. */ PostDeploy = 2, /** * Indicates all approvals. */ All = 3 } export interface Artifact { /** * Gets or sets alias. */ alias?: string; /** * Gets or sets definition reference. e.g. {"project":{"id":"fed755ea-49c5-4399-acea-fd5b5aa90a6c","name":"myProject"},"definition":{"id":"1","name":"mybuildDefinition"},"connection":{"id":"1","name":"myConnection"}}. */ definitionReference?: { [key: string]: ArtifactSourceReference; }; /** * Indicates whether artifact is primary or not. */ isPrimary?: boolean; /** * Indicates whether artifact is retained by release or not. */ isRetained?: boolean; sourceId?: string; /** * Gets or sets type. It can have value as 'Build', 'Jenkins', 'GitHub', 'Nuget', 'Team Build (external)', 'ExternalTFSBuild', 'Git', 'TFVC', 'ExternalTfsXamlBuild'. */ type?: string; } export interface ArtifactContributionDefinition { artifactTriggerConfiguration?: ArtifactTriggerConfiguration; artifactType?: string; artifactTypeStreamMapping?: { [key: string]: string; }; browsableArtifactTypeMapping?: { [key: string]: string; }; dataSourceBindings?: DataSourceBinding[]; displayName?: string; downloadTaskId?: string; endpointTypeId?: string; inputDescriptors?: FormInputInterfaces.InputDescriptor[]; isCommitsTraceabilitySupported?: boolean; isWorkitemsTraceabilitySupported?: boolean; name?: string; taskInputMapping?: { [key: string]: string; }; uniqueSourceIdentifier?: string; } export interface ArtifactDownloadInputBase { /** * Gets or sets the alias of artifact. */ alias?: string; /** * Gets or sets the name of artifact definition. Valid values are 'Skip', 'Selective', 'All'. */ artifactDownloadMode?: string; /** * Gets or sets the artifact items of the input. */ artifactItems?: string[]; /** * Gets or sets the type of artifact. */ artifactType?: string; } export interface ArtifactFilter { /** * Gets or sets whether a release should be created on build tagging. */ createReleaseOnBuildTagging?: boolean; /** * Gets or sets the branch for the filter. */ sourceBranch?: string; /** * Gets or sets the regex based tag filter. */ tagFilter?: TagFilter; /** * Gets or sets the list of tags for the filter. */ tags?: string[]; /** * Gets or sets whether filter should default to build definition branch. */ useBuildDefinitionBranch?: boolean; } export interface ArtifactInstanceData { accountName?: string; authenticationToken?: string; tfsUrl?: string; version?: string; } export interface ArtifactMetadata { /** * Sets alias of artifact. */ alias?: string; /** * Sets instance reference of artifact. e.g. for build artifact it is build number. */ instanceReference?: BuildVersion; } export interface ArtifactProvider { /** * Gets or sets the id of artifact provider. */ id?: number; /** * Gets or sets the name of artifact provider. */ name?: string; /** * Gets or sets the link of artifact provider. */ sourceUri?: string; /** * Gets or sets the version of artifact provider. */ version?: string; } export interface ArtifactsDownloadInput { downloadInputs?: ArtifactDownloadInputBase[]; } export interface ArtifactSourceId { /** * Gets or sets the artifact type of artifact source. */ artifactTypeId?: string; /** * Gets or sets the list of sourceIdInput of artifact source. */ sourceIdInputs?: SourceIdInput[]; } export interface ArtifactSourceIdsQueryResult { /** * Gets or sets the list of artifactsourceIds. */ artifactSourceIds?: ArtifactSourceId[]; } export interface ArtifactSourceReference { /** * ID of the artifact source. */ id?: string; /** * Name of the artifact source. */ name?: string; } export interface ArtifactSourceTrigger extends ReleaseTriggerBase { /** * Artifact source alias for Artifact Source trigger type */ artifactAlias?: string; triggerConditions?: ArtifactFilter[]; } export interface ArtifactTriggerConfiguration { /** * Gets or sets the whether trigger is supported or not. */ isTriggerSupported?: boolean; /** * Gets or sets the whether trigger is supported only on hosted environment. */ isTriggerSupportedOnlyInHosted?: boolean; /** * Gets or sets the whether webhook is supported at server level. */ isWebhookSupportedAtServerLevel?: boolean; /** * Gets or sets the payload hash header name for the artifact trigger configuration. */ payloadHashHeaderName?: string; /** * Gets or sets the resources for artifact trigger configuration. */ resources?: { [key: string]: string; }; /** * Gets or sets the webhook payload mapping for artifact trigger configuration. */ webhookPayloadMapping?: { [key: string]: string; }; } export interface ArtifactTypeDefinition { /** * Gets or sets the artifact trigger configuration of artifact type definition. */ artifactTriggerConfiguration?: ArtifactTriggerConfiguration; /** * Gets or sets the artifact type of artifact type definition. Valid values are 'Build', 'Package', 'Source' or 'ContainerImage'. */ artifactType?: string; /** * Gets or sets the display name of artifact type definition. */ displayName?: string; /** * Gets or sets the endpoint type id of artifact type definition. */ endpointTypeId?: string; /** * Gets or sets the input descriptors of artifact type definition. */ inputDescriptors?: FormInputInterfaces.InputDescriptor[]; /** * Gets or sets the is commits tracebility supported value of artifact type defintion. */ isCommitsTraceabilitySupported?: boolean; /** * Gets or sets the is workitems tracebility supported value of artifact type defintion. */ isWorkitemsTraceabilitySupported?: boolean; /** * Gets or sets the name of artifact type definition. */ name?: string; /** * Gets or sets the unique source identifier of artifact type definition. */ uniqueSourceIdentifier?: string; } export interface ArtifactVersion { /** * Gets or sets the alias of artifact. */ alias?: string; /** * Gets or sets the default version of artifact. */ defaultVersion?: BuildVersion; /** * Gets or sets the error message encountered during querying of versions for artifact. */ errorMessage?: string; sourceId?: string; /** * Gets or sets the list of build versions of artifact. */ versions?: BuildVersion[]; } export interface ArtifactVersionQueryResult { /** * Gets or sets the list for artifact versions of artifact version query result. */ artifactVersions?: ArtifactVersion[]; } export declare enum AuditAction { /** * Indicates the audit add. */ Add = 1, /** * Indicates the audit update. */ Update = 2, /** * Indicates the audit delete. */ Delete = 3, /** * Indicates the audit undelete. */ Undelete = 4 } export declare enum AuthorizationHeaderFor { RevalidateApproverIdentity = 0, OnBehalfOf = 1 } export interface AutoTriggerIssue { issue?: Issue; issueSource?: IssueSource; project?: ProjectReference; releaseDefinitionReference?: ReleaseDefinitionShallowReference; releaseTriggerType?: ReleaseTriggerType; } export interface AzureKeyVaultVariableGroupProviderData extends VariableGroupProviderData { /** * Gets or sets last refreshed time. */ lastRefreshedOn?: Date; /** * Gets or sets the service endpoint ID. */ serviceEndpointId?: string; /** * Gets or sets the vault name. */ vault?: string; } export interface AzureKeyVaultVariableValue extends VariableValue { /** * Gets or sets the content type of key vault variable value. */ contentType?: string; /** * Indicates the vault variable value enabled or not. */ enabled?: boolean; /** * Gets or sets the expire time of key vault variable value. */ expires?: Date; } export interface BaseDeploymentInput { /** * Gets or sets the job condition. */ condition?: string; /** * Gets or sets the job cancel timeout in minutes for deployment which are cancelled by user for this release environment. */ jobCancelTimeoutInMinutes?: number; /** * Gets or sets the override inputs. */ overrideInputs?: { [key: string]: string; }; /** * Gets or sets the job execution timeout in minutes for deployment which are queued against this release environment. */ timeoutInMinutes?: number; } export interface BuildArtifactDownloadInput extends ArtifactDownloadInputBase { } export interface BuildVersion { /** * Gets or sets the commit message for the artifact. */ commitMessage?: string; /** * Gets or sets the definition id. */ definitionId?: string; /** * Gets or sets the definition name. */ definitionName?: string; /** * Gets or sets the build id. */ id?: string; /** * Gets or sets if the artifact supports multiple definitions. */ isMultiDefinitionType?: boolean; /** * Gets or sets the build number. */ name?: string; /** * Gets or sets the source branch for the artifact. */ sourceBranch?: string; /** * Gets or sets the source pull request version for the artifact. */ sourcePullRequestVersion?: SourcePullRequestVersion; /** * Gets or sets the repository id for the artifact. */ sourceRepositoryId?: string; /** * Gets or sets the repository type for the artifact. */ sourceRepositoryType?: string; /** * Gets or sets the source version for the artifact. */ sourceVersion?: string; } /** * Represents a change associated with a build. */ export interface Change { /** * The author of the change. */ author?: VSSInterfaces.IdentityRef; /** * The type of source. "TfsVersionControl", "TfsGit", etc. */ changeType?: string; /** * The location of a user-friendly representation of the resource. */ displayUri?: string; /** * Something that identifies the change. For a commit, this would be the SHA1. For a TFVC changeset, this would be the changeset id. */ id?: string; /** * The location of the full representation of the resource. */ location?: string; /** * A description of the change. This might be a commit message or changeset description. */ message?: string; /** * The person or process that pushed the change. */ pushedBy?: VSSInterfaces.IdentityRef; /** * The person or process that pushed the change. */ pusher?: string; /** * A timestamp for the change. */ timestamp?: Date; } export interface CheckConfigurationReference { /** * Check configuration Id of generated gate. */ id?: number; /** * Name of the resource for which gate was generated. */ resourceName?: string; /** * Type of the resource for which the gate was generated. */ resourceType?: string; /** * Version of the check configuration gate was generated with. */ version?: number; } export interface CodeRepositoryReference { /** * Gets and sets the repository references. */ repositoryReference?: { [key: string]: ReleaseManagementInputValue; }; /** * It can have value as ‘GitHub’, ‘Vsts’. */ systemType?: PullRequestSystemType; } export interface ComplianceSettings { /** * Scan the release definition for secrets */ checkForCredentialsAndOtherSecrets?: boolean; } export interface Condition { /** * Gets or sets the condition type. */ conditionType?: ConditionType; /** * Gets or sets the name of the condition. e.g. 'ReleaseStarted'. */ name?: string; /** * The release condition result. */ result?: boolean; /** * Gets or set value of the condition. */ value?: string; } export declare enum ConditionType { /** * The condition type is undefined. */ Undefined = 0, /** * The condition type is event. */ Event = 1, /** * The condition type is environment state. */ EnvironmentState = 2, /** * The condition type is artifact. */ Artifact = 4 } export interface ConfigurationVariableValue { /** * Gets and sets if a variable can be overridden at deployment time or not. */ allowOverride?: boolean; /** * Gets or sets as variable is secret or not. */ isSecret?: boolean; /** * Gets and sets value of the configuration variable. */ value?: string; } export interface Consumer { /** * ID of the consumer. */ consumerId?: number; /** * Name of the consumer. */ consumerName?: string; } export interface ContainerImageTrigger extends ReleaseTriggerBase { /** * Alias of the trigger. */ alias?: string; /** * List tag filters applied while trigger. */ tagFilters?: TagFilter[]; } export interface ContinuousDeploymentTriggerIssue extends AutoTriggerIssue { /** * Artifact type. */ artifactType?: string; /** * ArtifactVersion ID. */ artifactVersionId?: string; /** * Artifact source ID. */ sourceId?: string; } export interface ControlOptions { /** * Always run the job. */ alwaysRun?: boolean; /** * Indicates whether to continue job on error or not. */ continueOnError?: boolean; /** * Indicates the job enabled or not. */ enabled?: boolean; } export interface CustomArtifactDownloadInput extends ArtifactDownloadInputBase { } export interface DataSourceBinding { /** * Pagination format supported by this data source(ContinuationToken/SkipTop). */ callbackContextTemplate?: string; /** * Subsequent calls needed? */ callBackRequiredTemplate?: string; /** * Name of the datasource. */ dataSourceName?: string; /** * Endpoint ID of the datasource. */ endpointId?: string; /** * Endpoint URL of the datasource. */ endpointUrl?: string; /** * Defines the initial value of the query params */ initialContextTemplate?: string; /** * Parameters of the datasource. */ parameters?: { [key: string]: string; }; /** * Gets or sets http request body */ requestContent?: string; /** * Gets or sets http request verb */ requestVerb?: string; /** * Result selector applied on output of datasource result, for example jsonpath:$.value[?(@.properties.isEnabled == true)]. */ resultSelector?: string; /** * Format of the return results, for example. { "Value" : "{{{id}}}", "DisplayValue" : "{{{name}}}" }. */ resultTemplate?: string; /** * Target of the datasource. */ target?: string; } export interface DefinitionEnvironmentReference { /** * Definition environment ID. */ definitionEnvironmentId?: number; /** * Definition environment name. */ definitionEnvironmentName?: string; /** * ReleaseDefinition ID. */ releaseDefinitionId?: number; /** * ReleaseDefinition name. */ releaseDefinitionName?: string; } export interface Demand { /** * Gets and sets the name of demand. */ name?: string; /** * Gets and sets the value of demand. */ value?: string; } export interface Deployment { /** * Gets links to access the deployment. */ _links?: any; /** * Gets attempt number. */ attempt?: number; /** * Gets the date on which deployment is complete. */ completedOn?: Date; /** * Gets the list of condition associated with deployment. */ conditions?: Condition[]; /** * Gets release definition environment id. */ definitionEnvironmentId?: number; /** * Gets status of the deployment. */ deploymentStatus?: DeploymentStatus; /** * Gets the unique identifier for deployment. */ id?: number; /** * Gets the identity who last modified the deployment. */ lastModifiedBy?: VSSInterfaces.IdentityRef; /** * Gets the date on which deployment is last modified. */ lastModifiedOn?: Date; /** * Gets operation status of deployment. */ operationStatus?: DeploymentOperationStatus; /** * Gets list of PostDeployApprovals. */ postDeployApprovals?: ReleaseApproval[]; /** * Gets list of PreDeployApprovals. */ preDeployApprovals?: ReleaseApproval[]; /** * Gets or sets project reference. */ projectReference?: ProjectReference; /** * Gets the date on which deployment is queued. */ queuedOn?: Date; /** * Gets reason of deployment. */ reason?: DeploymentReason; /** * Gets the reference of release. */ release?: ReleaseReference; /** * Gets releaseDefinitionReference which specifies the reference of the release definition to which the deployment is associated. */ releaseDefinition?: ReleaseDefinitionShallowReference; /** * Gets releaseEnvironmentReference which specifies the reference of the release environment to which the deployment is associated. */ releaseEnvironment?: ReleaseEnvironmentShallowReference; /** * Gets the identity who requested. */ requestedBy?: VSSInterfaces.IdentityRef; /** * Gets the identity for whom deployment is requested. */ requestedFor?: VSSInterfaces.IdentityRef; /** * Gets the date on which deployment is scheduled. */ scheduledDeploymentTime?: Date; /** * Gets the date on which deployment is started. */ startedOn?: Date; } export interface DeploymentApprovalCompletedEvent extends DeploymentEvent { approval?: ReleaseApproval; project?: ProjectReference; release?: Release; } export interface DeploymentApprovalPendingEvent extends DeploymentEvent { approval?: ReleaseApproval; approvalOptions?: ApprovalOptions; completedApprovals?: ReleaseApproval[]; data?: { [key: string]: any; }; deployment?: Deployment; isMultipleRankApproval?: boolean; pendingApprovals?: ReleaseApproval[]; project?: ProjectReference; release?: Release; } export interface DeploymentAttempt { /** * Deployment attempt. */ attempt?: number; /** * ID of the deployment. */ deploymentId?: number; /** * Error log to show any unexpected error that occurred during executing deploy step */ errorLog?: string; /** * Specifies whether deployment has started or not. */ hasStarted?: boolean; /** * ID of deployment. */ id?: number; /** * All the issues related to the deployment. */ issues?: Issue[]; job?: ReleaseTask; /** * Identity who last modified this deployment. */ lastModifiedBy?: VSSInterfaces.IdentityRef; /** * Time when this deployment last modified. */ lastModifiedOn?: Date; /** * Deployment operation status. */ operationStatus?: DeploymentOperationStatus; /** * Post deployment gates that executed in this deployment. */ postDeploymentGates?: ReleaseGates; /** * Pre deployment gates that executed in this deployment. */ preDeploymentGates?: ReleaseGates; /** * When this deployment queued on. */ queuedOn?: Date; /** * Reason for the deployment. */ reason?: DeploymentReason; /** * List of release deployphases executed in this deployment. */ releaseDeployPhases?: ReleaseDeployPhase[]; /** * Identity who requested this deployment. */ requestedBy?: VSSInterfaces.IdentityRef; /** * Identity for this deployment requested. */ requestedFor?: VSSInterfaces.IdentityRef; runPlanId?: string; /** * status of the deployment. */ status?: DeploymentStatus; tasks?: ReleaseTask[]; } export interface DeploymentAuthorizationInfo { /** * Authorization header type, typically either RevalidateApproverIdentity or OnBehalfOf. */ authorizationHeaderFor?: AuthorizationHeaderFor; /** * List of resources. */ resources?: string[]; /** * ID of the tenant. */ tenantId?: string; /** * Access token key. */ vstsAccessTokenKey?: string; } export declare enum DeploymentAuthorizationOwner { Automatic = 0, DeploymentSubmitter = 1, FirstPreDeploymentApprover = 2 } export interface DeploymentCompletedEvent extends DeploymentEvent { comment?: string; data?: { [key: string]: any; }; deployment?: Deployment; environment?: ReleaseEnvironment; project?: ProjectReference; } export interface DeploymentEvent extends ReleaseEvent { attemptId?: number; stageName?: string; } export declare enum DeploymentExpands { All = 0, DeploymentOnly = 1, Approvals = 2, Artifacts = 4 } export interface DeploymentInput extends BaseDeploymentInput { /** * Artifacts that downloaded during job execution. */ artifactsDownloadInput?: ArtifactsDownloadInput; /** * List demands that needs to meet to execute the job. */ demands?: Demand[]; /** * Indicates whether to include access token in deployment job or not. */ enableAccessToken?: boolean; /** * Id of the pool on which job get executed. */ queueId?: number; /** * Indicates whether artifacts downloaded while job execution or not. */ skipArtifactsDownload?: boolean; } export interface DeploymentJob { /** * Parent task of all executed tasks. */ job?: ReleaseTask; /** * List of executed tasks with in job. */ tasks?: ReleaseTask[]; } export interface DeploymentManualInterventionPendingEvent { approval?: ReleaseApproval; deployment?: Deployment; emailRecipients?: string[]; environmentOwner?: VSSInterfaces.IdentityRef; manualIntervention?: ManualIntervention; project?: ProjectReference; release?: Release; } export declare enum DeploymentOperationStatus { /** * The deployment operation status is undefined. */ Undefined = 0, /** * The deployment operation status is queued. */ Queued = 1, /** * The deployment operation status is scheduled. */ Scheduled = 2, /** * The deployment operation status is pending. */ Pending = 4, /** * The deployment operation status is approved. */ Approved = 8, /** * The deployment operation status is rejected. */ Rejected = 16, /** * The deployment operation status is deferred. */ Deferred = 32, /** * The deployment operation status is queued for agent. */ QueuedForAgent = 64, /** * The deployment operation status is phase in progress. */ PhaseInProgress = 128, /** * The deployment operation status is phase succeeded. */ PhaseSucceeded = 256, /** * The deployment operation status is phase partially succeeded. */ PhasePartiallySucceeded = 512, /** * The deployment operation status is phase failed. */ PhaseFailed = 1024, /** * The deployment operation status is canceled. */ Canceled = 2048, /** * The deployment operation status is phase canceled. */ PhaseCanceled = 4096, /** * The deployment operation status is manualintervention pending. */ ManualInterventionPending = 8192, /** * The deployment operation status is queued for pipeline. */ QueuedForPipeline = 16384, /** * The deployment operation status is cancelling. */ Cancelling = 32768, /** * The deployment operation status is EvaluatingGates. */ EvaluatingGates = 65536, /** * The deployment operation status is GateFailed. */ GateFailed = 131072, /** * The deployment operation status is all. */ All = 258047 } export interface DeploymentQueryParameters { /** * Query deployments based specified artifact source id. */ artifactSourceId?: string; /** * Query deployments based specified artifact type id. */ artifactTypeId?: string; /** * Query deployments based specified artifact versions. */ artifactVersions?: string[]; /** * Query deployments number of deployments per environment. */ deploymentsPerEnvironment?: number; /** * Query deployment based on deployment status. */ deploymentStatus?: DeploymentStatus; /** * Query deployments of specified environments. */ environments?: DefinitionEnvironmentReference[]; /** * Query deployments based specified expands. */ expands?: DeploymentExpands; /** * Specify deleted deployments should return or not. */ isDeleted?: boolean; latestDeploymentsOnly?: boolean; maxDeploymentsPerEnvironment?: number; maxModifiedTime?: Date; minModifiedTime?: Date; /** * Query deployment based on deployment operation status. */ operationStatus?: DeploymentOperationStatus; queryOrder?: ReleaseQueryOrder; /** * Query deployments based query type. */ queryType?: DeploymentsQueryType; /** * Query deployments based specified source branch. */ sourceBranch?: string; } export declare enum DeploymentReason { /** * The deployment reason is none. */ None = 0, /** * The deployment reason is manual. */ Manual = 1, /** * The deployment reason is automated. */ Automated = 2, /** * The deployment reason is scheduled. */ Scheduled = 4, /** * The deployment reason is RedeployTrigger. */ RedeployTrigger = 8 } export declare enum DeploymentsQueryType { Regular = 1, FailingSince = 2 } export interface DeploymentStartedEvent extends DeploymentEvent { environment?: ReleaseEnvironment; project?: ProjectReference; release?: Release; } export declare enum DeploymentStatus { /** * The deployment status is undefined. */ Undefined = 0, /** * The deployment status is not deployed. */ NotDeployed = 1, /** * The deployment status is in progress. */ InProgress = 2, /** * The deployment status is succeeded. */ Succeeded = 4, /** * The deployment status is partiallysucceeded. */ PartiallySucceeded = 8, /** * The deployment status is failed. */ Failed = 16, /** * The deployment status is all. */ All = 31 } export interface DeployPhase { /** * Gets and sets the name of deploy phase. */ name?: string; /** * Indicates the deploy phase type. */ phaseType?: DeployPhaseTypes; /** * Gets and sets the rank of deploy phase. */ rank?: number; /** * Gets and sets the reference name of deploy phase. */ refName?: string; /** * Gets and sets the workflow tasks for the deploy phase. */ workflowTasks?: WorkflowTask[]; } export declare enum DeployPhaseStatus { /** * Phase status not set. */ Undefined = 0, /** * Phase execution not started. */ NotStarted = 1, /** * Phase execution in progress. */ InProgress = 2, /** * Phase execution partially succeeded. */ PartiallySucceeded = 4, /** * Phase execution succeeded. */ Succeeded = 8, /** * Phase execution failed. */ Failed = 16, /** * Phase execution canceled. */ Canceled = 32, /** * Phase execution skipped. */ Skipped = 64, /** * Phase is in cancelling state. */ Cancelling = 128 } export declare enum DeployPhaseTypes { /** * Phase type not defined. Don't use this. */ Undefined = 0, /** * Phase type which contains tasks executed on agent. */ AgentBasedDeployment = 1, /** * Phase type which contains tasks executed by server. */ RunOnServer = 2, /** * Phase type which contains tasks executed on deployment group machines. */ MachineGroupBasedDeployment = 4, /** * Phase type which contains tasks which acts as Gates for the deployment to go forward. */ DeploymentGates = 8 } export interface EmailRecipients { /** * List of email addresses. */ emailAddresses?: string[]; /** * List of TFS IDs guids. */ tfsIds?: string[]; } /** * Defines policy on environment queuing at Release Management side queue. We will send to Environment Runner [creating pre-deploy and other steps] only when the policies mentioned are satisfied. */ export interface EnvironmentExecutionPolicy { /** * This policy decides, how many environments would be with Environment Runner. */ concurrencyCount?: number; /** * Queue depth in the EnvironmentQueue table, this table keeps the environment entries till Environment Runner is free [as per it's policy] to take another environment for running. */ queueDepthCount?: number; } export interface EnvironmentOptions { /** * Gets and sets as the auto link workitems or not. */ autoLinkWorkItems?: boolean; /** * Gets and sets as the badge enabled or not. */ badgeEnabled?: boolean; emailNotificationType?: string; emailRecipients?: string; enableAccessToken?: boolean; /** * Gets and sets as the publish deployment status or not. */ publishDeploymentStatus?: boolean; /** * Gets and sets as the.pull request deployment enabled or not. */ pullRequestDeploymentEnabled?: boolean; skipArtifactsDownload?: boolean; timeoutInMinutes?: number; } export interface EnvironmentRetentionPolicy { /** * Gets and sets the number of days to keep environment. */ daysToKeep?: number; /** * Gets and sets the number of releases to keep. */ releasesToKeep?: number; /** * Gets and sets as the build to be retained or not. */ retainBuild?: boolean; } export declare enum EnvironmentStatus { /** * Environment status not set. */ Undefined = 0, /** * Environment is in not started state. */ NotStarted = 1, /** * Environment is in progress state. */ InProgress = 2, /** * Environment is in succeeded state. */ Succeeded = 4, /** * Environment is in canceled state. */ Canceled = 8, /** * Environment is in rejected state. */ Rejected = 16, /** * Environment is in queued state. */ Queued = 32, /** * Environment is in scheduled state. */ Scheduled = 64, /** * Environment is in partially succeeded state. */ PartiallySucceeded = 128 } export interface EnvironmentTrigger { /** * Definition environment ID on which this trigger applicable. */ definitionEnvironmentId?: number; /** * ReleaseDefinition ID on which this trigger applicable. */ releaseDefinitionId?: number; /** * Gets or sets the trigger content. */ triggerContent?: string; /** * Gets or sets the trigger type. */ triggerType?: EnvironmentTriggerType; } export interface EnvironmentTriggerContent { /** * Gets or sets action. */ action?: string; /** * Gets or sets list of event types. */ eventTypes?: string[]; } export declare enum EnvironmentTriggerType { /** * Environment trigger type undefined. */ Undefined = 0, /** * Environment trigger type is deployment group redeploy. */ DeploymentGroupRedeploy = 1, /** * Environment trigger type is Rollback. */ RollbackRedeploy = 2 } export interface ExecutionInput { /** * Parallel execution type, for example MultiConfiguration or MultiMachine. */ parallelExecutionType?: ParallelExecutionTypes; } /** * Class to represent favorite entry. */ export interface FavoriteItem { /** * Application specific data for the entry. */ data?: string; /** * Unique Id of the entry. */ id?: string; /** * Display text for favorite entry. */ name?: string; /** * Application specific favorite entry type. Empty or Null represents that Favorite item is a Folder. */ type?: string; } export interface Folder { /** * Identity who created this folder. */ createdBy?: VSSInterfaces.IdentityRef; /** * Time when this folder created. */ createdOn?: Date; /** * Description of the folder. */ description?: string; /** * Identity who last changed this folder. */ lastChangedBy?: VSSInterfaces.IdentityRef; /** * Time when this folder last changed. */ lastChangedDate?: Date; /** * path of the folder. */ path?: string; } /** * Specifies the desired ordering of folders. */ export declare enum FolderPathQueryOrder { /** * No order. */ None = 0, /** * Order by folder name and path ascending. */ Ascending = 1, /** * Order by folder name and path descending. */ Descending = 2 } export interface GatesDeploymentInput extends BaseDeploymentInput { /** * Gates minimum success duration. */ minimumSuccessDuration?: number; /** * Gates sampling interval. */ samplingInterval?: number; /** * Gates stabilization time. */ stabilizationTime?: number; } export interface GatesDeployPhase extends DeployPhase { /** * Gets and sets the gate job input. */ deploymentInput?: GatesDeploymentInput; } export declare enum GateStatus { /** * The gate does not have the status set. */ None = 0, /** * The gate is in pending state. */ Pending = 1, /** * The gate is currently in progress. */ InProgress = 2, /** * The gate completed successfully. */ Succeeded = 4, /** * The gate execution failed. */ Failed = 8, /** * The gate execution cancelled. */ Canceled = 16 } export interface GateUpdateMetadata { /** * Comment. */ comment?: string; /** * Name of gate to be ignored. */ gatesToIgnore?: string[]; } export interface GitArtifactDownloadInput extends ArtifactDownloadInputBase { } export interface GitHubArtifactDownloadInput extends ArtifactDownloadInputBase { } export interface IgnoredGate { /** * Gets the date on which gate is last ignored. */ lastModifiedOn?: Date; /** * Name of gate ignored. */ name?: string; } export interface Issue { /** * Issue data. */ data?: { [key: string]: string; }; /** * Issue type, for example error, warning or info. */ issueType?: string; /** * Issue message. */ message?: string; } export declare enum IssueSource { None = 0, User = 1, System = 2 } export interface JenkinsArtifactDownloadInput extends ArtifactDownloadInputBase { } export interface MachineGroupBasedDeployPhase extends DeployPhase { /** * Gets and sets the deployment group job input */ deploymentInput?: MachineGroupDeploymentInput; } export interface MachineGroupDeploymentInput extends DeploymentInput { /** * Deployment group health option. */ deploymentHealthOption?: string; /** * Minimum percentage of the targets guaranteed to be healthy. */ healthPercent?: number; /** * Deployment target tag filter. */ tags?: string[]; } export interface MailMessage { /** * Body of mail. */ body?: string; /** * Mail CC recipients. */ cC?: EmailRecipients; /** * Reply to. */ inReplyTo?: string; /** * Message ID of the mail. */ messageId?: string; /** * Data when should be replied to mail. */ replyBy?: Date; /** * Reply to Email recipients. */ replyTo?: EmailRecipients; /** * List of mail section types. */ sections?: MailSectionType[]; /** * Mail sender type. */ senderType?: SenderType; /** * Subject of the mail. */ subject?: string; /** * Mail To recipients. */ to?: EmailRecipients; } export declare enum MailSectionType { Details = 0, Environments = 1, Issues = 2, TestResults = 3, WorkItems = 4, ReleaseInfo = 5 } export interface ManualIntervention { /** * Gets or sets the identity who should approve. */ approver?: VSSInterfaces.IdentityRef; /** * Gets or sets comments for approval. */ comments?: string; /** * Gets date on which it got created. */ createdOn?: Date; /** * Gets the unique identifier for manual intervention. */ id?: number; /** * Gets or sets instructions for approval. */ instructions?: string; /** * Gets date on which it got modified. */ modifiedOn?: Date; /** * Gets or sets the name. */ name?: string; /** * Gets releaseReference for manual intervention. */ release?: ReleaseShallowReference; /** * Gets releaseDefinitionReference for manual intervention. */ releaseDefinition?: ReleaseDefinitionShallowReference; /** * Gets releaseEnvironmentReference for manual intervention. */ releaseEnvironment?: ReleaseEnvironmentShallowReference; /** * Gets or sets the status of the manual intervention. */ status?: ManualInterventionStatus; /** * Get task instance identifier. */ taskInstanceId?: string; /** * Gets url to access the manual intervention. */ url?: string; } /** * Describes manual intervention status */ export declare enum ManualInterventionStatus { /** * The manual intervention does not have the status set. */ Unknown = 0, /** * The manual intervention is pending. */ Pending = 1, /** * The manual intervention is rejected. */ Rejected = 2, /** * The manual intervention is approved. */ Approved = 4, /** * The manual intervention is canceled. */ Canceled = 8 } export interface ManualInterventionUpdateMetadata { /** * Sets the comment for manual intervention update. */ comment?: string; /** * Sets the status of the manual intervention. */ status?: ManualInterventionStatus; } export interface MappingDetails { mappings?: { [key: string]: FormInputInterfaces.InputValue; }; } export interface Metric { /** * Name of the Metric. */ name?: string; /** * Value of the Metric. */ value?: number; } export interface MultiConfigInput extends ParallelExecutionInputBase { /** * Multipliers for parallel execution of deployment, for example x86,x64. */ multipliers?: string; } export interface MultiMachineInput extends ParallelExecutionInputBase { } export interface OrgPipelineReleaseSettings { /** * Defines whether user can manage pipeline settings. */ hasManagePipelinePoliciesPermission?: boolean; /** * EnforceJobAuthScope setting at organisaion level. If enabled, scope of access for all release pipelines in the organisation reduces to the current project. */ orgEnforceJobAuthScope?: boolean; } export interface OrgPipelineReleaseSettingsUpdateParameters { /** * EnforceJobAuthScope setting at organisaion level. If enabled, scope of access for all release pipelines in the organisation reduces to the current project. */ orgEnforceJobAuthScope?: boolean; } export interface PackageTrigger extends ReleaseTriggerBase { /** * Package trigger alias. */ alias?: string; } export interface ParallelExecutionInputBase extends ExecutionInput { /** * Indicate whether continue execution of deployment on error or not. */ continueOnError?: boolean; /** * Maximum number of agents used while parallel execution. */ maxNumberOfAgents?: number; } export declare enum ParallelExecutionTypes { None = 0, MultiConfiguration = 1, MultiMachine = 2 } export interface PipelineProcess { /** * Pipeline process type. */ type?: PipelineProcessTypes; } export declare enum PipelineProcessTypes { Designer = 1, Yaml = 2 } export interface ProjectPipelineReleaseSettings { /** * EnforceJobAuthScope setting at project level. If enabled, scope of access for all release pipelines reduces to the current project. */ enforceJobAuthScope?: boolean; /** * Defines whether user can manage pipeline settings. */ hasManageSettingsPermission?: boolean; /** * EnforceJobAuthScope setting at organisaion level. If enabled, scope of access for all release pipelines in the organisation reduces to the current project. */ orgEnforceJobAuthScope?: boolean; /** * Defines whether project is public. */ publicProject?: boolean; } export interface ProjectPipelineReleaseSettingsUpdateParameters { /** * EnforceJobAuthScope setting at project level. If enabled, scope of access for all release pipelines reduces to the current project. */ enforceJobAuthScope?: boolean; } export interface ProjectReference { /** * Gets the unique identifier of this field. */ id?: string; /** * Gets name of project. */ name?: string; } export interface PropertySelector { /** * List of properties. */ properties?: string[]; /** * Property selector type. */ selectorType?: PropertySelectorType; } export declare enum PropertySelectorType { /** * Include in property selector. */ Inclusion = 0, /** * Exclude in property selector. */ Exclusion = 1 } export interface PullRequestConfiguration { /** * Code repository reference. */ codeRepositoryReference?: CodeRepositoryReference; /** * In case of Source based artifacts, Code reference will be present in Artifact details. */ useArtifactReference?: boolean; } export interface PullRequestFilter { /** * List of tags. */ tags?: string[]; /** * Target branch of pull request. */ targetBranch?: string; } export declare enum PullRequestSystemType { None = 0, TfsGit = 1, GitHub = 2 } export interface PullRequestTrigger extends ReleaseTriggerBase { /** * Artifact alias trigger is linked to. */ artifactAlias?: string; /** * Code reference details of pull request. */ pullRequestConfiguration?: PullRequestConfiguration; /** * Policy name using which status will be published to pull request. */ statusPolicyName?: string; /** * List of filters applied while trigger. */ triggerConditions?: PullRequestFilter[]; } export interface QueuedReleaseData { /** * Project ID of the release. */ projectId?: string; /** * Release queue position. */ queuePosition?: number; /** * Queued release ID. */ releaseId?: number; } export i