UNPKG

appcenter-cli

Version:

Command line tool for Visual Studio App Center

600 lines (582 loc) 17.5 kB
/* * Copyright (c) Microsoft Corporation. * Licensed under the MIT License. * * Code generated by Microsoft (R) AutoRest Code Generator. * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ import { Builds } from "../operationsInterfaces"; import * as coreClient from "@azure/core-client"; import * as Mappers from "../models/mappers"; import * as Parameters from "../models/parameters"; import { AppCenterClient } from "../appCenterClient"; import { BuildsListXcodeVersionsOptionalParams, BuildsListXcodeVersionsResponse, BuildsListXamarinSDKBundlesOptionalParams, BuildsListXamarinSDKBundlesResponse, BuildsListToolsetsOptionalParams, BuildsListToolsetsResponse, BuildsGetLogOptionalParams, BuildsGetLogResponse, Enum475, BuildsGetDownloadUriOptionalParams, BuildsGetDownloadUriResponse, Paths1P28L53V01AppsOwnerNameAppNameBuildsBuildIdDistributePostRequestbodyContentApplicationJsonSchema, BuildsDistributeOptionalParams, BuildsDistributeResponse, BuildsGetOptionalParams, BuildsGetResponse, BuildsUpdateOptionalParams, BuildsUpdateResponse, BuildsGetStatusByAppIdOptionalParams, BuildsGetStatusByAppIdResponse, Enum484, Enum485, BuildsListToolsetProjectsOptionalParams, BuildsListToolsetProjectsResponse, BuildsListByBranchOptionalParams, BuildsListByBranchResponse, BuildsCreateOptionalParams, BuildsCreateResponse, BuildsListBranchesOptionalParams, BuildsListBranchesResponse } from "../models"; /** Class containing Builds operations. */ export class BuildsImpl implements Builds { private readonly client: AppCenterClient; /** * Initialize a new instance of the class Builds class. * @param client Reference to the service client */ constructor(client: AppCenterClient) { this.client = client; } /** * Gets the Xcode versions available to this app * @param ownerName The name of the owner * @param appName The name of the application * @param options The options parameters. */ listXcodeVersions( ownerName: string, appName: string, options?: BuildsListXcodeVersionsOptionalParams ): Promise<BuildsListXcodeVersionsResponse> { return this.client.sendOperationRequest( { ownerName, appName, options }, listXcodeVersionsOperationSpec ); } /** * Gets the Xamarin SDK bundles available to this app * @param ownerName The name of the owner * @param appName The name of the application * @param options The options parameters. */ listXamarinSDKBundles( ownerName: string, appName: string, options?: BuildsListXamarinSDKBundlesOptionalParams ): Promise<BuildsListXamarinSDKBundlesResponse> { return this.client.sendOperationRequest( { ownerName, appName, options }, listXamarinSDKBundlesOperationSpec ); } /** * Returns available toolsets for application * @param ownerName The name of the owner * @param appName The name of the application * @param options The options parameters. */ listToolsets( ownerName: string, appName: string, options?: BuildsListToolsetsOptionalParams ): Promise<BuildsListToolsetsResponse> { return this.client.sendOperationRequest( { ownerName, appName, options }, listToolsetsOperationSpec ); } /** * Get the build log * @param buildId The build ID * @param ownerName The name of the owner * @param appName The name of the application * @param options The options parameters. */ getLog( buildId: number, ownerName: string, appName: string, options?: BuildsGetLogOptionalParams ): Promise<BuildsGetLogResponse> { return this.client.sendOperationRequest( { buildId, ownerName, appName, options }, getLogOperationSpec ); } /** * Gets the download URI * @param buildId The build ID * @param downloadType The download type * @param ownerName The name of the owner * @param appName The name of the application * @param options The options parameters. */ getDownloadUri( buildId: number, downloadType: Enum475, ownerName: string, appName: string, options?: BuildsGetDownloadUriOptionalParams ): Promise<BuildsGetDownloadUriResponse> { return this.client.sendOperationRequest( { buildId, downloadType, ownerName, appName, options }, getDownloadUriOperationSpec ); } /** * Distribute a build * @param buildId The build ID * @param ownerName The name of the owner * @param appName The name of the application * @param distributeInfo The distribution details * @param options The options parameters. */ distribute( buildId: number, ownerName: string, appName: string, distributeInfo: Paths1P28L53V01AppsOwnerNameAppNameBuildsBuildIdDistributePostRequestbodyContentApplicationJsonSchema, options?: BuildsDistributeOptionalParams ): Promise<BuildsDistributeResponse> { return this.client.sendOperationRequest( { buildId, ownerName, appName, distributeInfo, options }, distributeOperationSpec ); } /** * Returns the build detail for the given build ID * @param buildId The build ID * @param ownerName The name of the owner * @param appName The name of the application * @param options The options parameters. */ get( buildId: number, ownerName: string, appName: string, options?: BuildsGetOptionalParams ): Promise<BuildsGetResponse> { return this.client.sendOperationRequest( { buildId, ownerName, appName, options }, getOperationSpec ); } /** * Cancels a build * @param buildId The build ID * @param ownerName The name of the owner * @param appName The name of the application * @param options The options parameters. */ update( buildId: number, ownerName: string, appName: string, options?: BuildsUpdateOptionalParams ): Promise<BuildsUpdateResponse> { return this.client.sendOperationRequest( { buildId, ownerName, appName, options }, updateOperationSpec ); } /** * Application specific build service status * @param ownerName The name of the owner * @param appName The name of the application * @param options The options parameters. */ getStatusByAppId( ownerName: string, appName: string, options?: BuildsGetStatusByAppIdOptionalParams ): Promise<BuildsGetStatusByAppIdResponse> { return this.client.sendOperationRequest( { ownerName, appName, options }, getStatusByAppIdOperationSpec ); } /** * Returns the projects in the repository for the branch, for all toolsets * @param branch The branch name * @param os The desired OS for the project scan; normally the same as the app OS * @param platform The desired platform for the project scan * @param ownerName The name of the owner * @param appName The name of the application * @param options The options parameters. */ listToolsetProjects( branch: string, os: Enum484, platform: Enum485, ownerName: string, appName: string, options?: BuildsListToolsetProjectsOptionalParams ): Promise<BuildsListToolsetProjectsResponse> { return this.client.sendOperationRequest( { branch, os, platform, ownerName, appName, options }, listToolsetProjectsOperationSpec ); } /** * Returns the list of builds for the branch * @param branch The branch name * @param ownerName The name of the owner * @param appName The name of the application * @param options The options parameters. */ listByBranch( branch: string, ownerName: string, appName: string, options?: BuildsListByBranchOptionalParams ): Promise<BuildsListByBranchResponse> { return this.client.sendOperationRequest( { branch, ownerName, appName, options }, listByBranchOperationSpec ); } /** * Create a build * @param branch The branch name * @param ownerName The name of the owner * @param appName The name of the application * @param options The options parameters. */ create( branch: string, ownerName: string, appName: string, options?: BuildsCreateOptionalParams ): Promise<BuildsCreateResponse> { return this.client.sendOperationRequest( { branch, ownerName, appName, options }, createOperationSpec ); } /** * Returns the list of Git branches for this application * @param ownerName The name of the owner * @param appName The name of the application * @param options The options parameters. */ listBranches( ownerName: string, appName: string, options?: BuildsListBranchesOptionalParams ): Promise<BuildsListBranchesResponse> { return this.client.sendOperationRequest( { ownerName, appName, options }, listBranchesOperationSpec ); } } // Operation Specifications const serializer = coreClient.createSerializer(Mappers, /* isXml */ false); const listXcodeVersionsOperationSpec: coreClient.OperationSpec = { path: "/v0.1/apps/{owner_name}/{app_name}/xcode_versions", httpMethod: "GET", responses: { 200: { bodyMapper: { type: { name: "Sequence", element: { type: { name: "Composite", className: "PathsSnbseaV01AppsOwnerNameAppNameXcodeVersionsGetResponses200ContentApplicationJsonSchemaItems" } } } } }, default: { bodyMapper: Mappers.Paths9Yy0MkV01AppsOwnerNameAppNameXcodeVersionsGetResponsesDefaultContentApplicationJsonSchema } }, urlParameters: [Parameters.$host, Parameters.ownerName, Parameters.appName], headerParameters: [Parameters.accept], serializer }; const listXamarinSDKBundlesOperationSpec: coreClient.OperationSpec = { path: "/v0.1/apps/{owner_name}/{app_name}/xamarin_sdk_bundles", httpMethod: "GET", responses: { 200: { bodyMapper: { type: { name: "Sequence", element: { type: { name: "Composite", className: "Paths1Nv9E3SV01AppsOwnerNameAppNameXamarinSdkBundlesGetResponses200ContentApplicationJsonSchemaItems" } } } } }, default: { bodyMapper: Mappers.Paths1G32ByzV01AppsOwnerNameAppNameXamarinSdkBundlesGetResponsesDefaultContentApplicationJsonSchema } }, urlParameters: [Parameters.$host, Parameters.ownerName, Parameters.appName], headerParameters: [Parameters.accept], serializer }; const listToolsetsOperationSpec: coreClient.OperationSpec = { path: "/v0.1/apps/{owner_name}/{app_name}/toolsets", httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.PathsJw4J38V01AppsOwnerNameAppNameToolsetsGetResponses200ContentApplicationJsonSchema }, default: { bodyMapper: Mappers.Paths1Dh1CmbV01AppsOwnerNameAppNameToolsetsGetResponsesDefaultContentApplicationJsonSchema } }, queryParameters: [Parameters.tools], urlParameters: [Parameters.$host, Parameters.ownerName, Parameters.appName], headerParameters: [Parameters.accept], serializer }; const getLogOperationSpec: coreClient.OperationSpec = { path: "/v0.1/apps/{owner_name}/{app_name}/builds/{build_id}/logs", httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.Paths1A4WxwuV01AppsOwnerNameAppNameBuildsBuildIdLogsGetResponses200ContentApplicationJsonSchema } }, urlParameters: [ Parameters.$host, Parameters.ownerName, Parameters.appName, Parameters.buildId ], headerParameters: [Parameters.accept], serializer }; const getDownloadUriOperationSpec: coreClient.OperationSpec = { path: "/v0.1/apps/{owner_name}/{app_name}/builds/{build_id}/downloads/{download_type}", httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.PathsQ75XzuV01AppsOwnerNameAppNameBuildsBuildIdDownloadsDownloadTypeGetResponses200ContentApplicationJsonSchema } }, urlParameters: [ Parameters.$host, Parameters.ownerName, Parameters.appName, Parameters.buildId, Parameters.downloadType ], headerParameters: [Parameters.accept], serializer }; const distributeOperationSpec: coreClient.OperationSpec = { path: "/v0.1/apps/{owner_name}/{app_name}/builds/{build_id}/distribute", httpMethod: "POST", responses: { 200: { bodyMapper: Mappers.Paths1D42Nj4V01AppsOwnerNameAppNameBuildsBuildIdDistributePostResponses200ContentApplicationJsonSchema } }, requestBody: Parameters.distributeInfo, urlParameters: [ Parameters.$host, Parameters.ownerName, Parameters.appName, Parameters.buildId ], headerParameters: [Parameters.contentType, Parameters.accept], mediaType: "json", serializer }; const getOperationSpec: coreClient.OperationSpec = { path: "/v0.1/apps/{owner_name}/{app_name}/builds/{build_id}", httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.PathsN3VrpV01AppsOwnerNameAppNameBuildsBuildIdGetResponses200ContentApplicationJsonSchema } }, urlParameters: [ Parameters.$host, Parameters.ownerName, Parameters.appName, Parameters.buildId ], headerParameters: [Parameters.accept], serializer }; const updateOperationSpec: coreClient.OperationSpec = { path: "/v0.1/apps/{owner_name}/{app_name}/builds/{build_id}", httpMethod: "PATCH", responses: { 200: { bodyMapper: Mappers.Paths1Kppxb1V01AppsOwnerNameAppNameBuildsBuildIdPatchResponses200ContentApplicationJsonSchema } }, requestBody: { parameterPath: { status: ["options", "status"] }, mapper: { ...Mappers.PathsFcn32WV01AppsOwnerNameAppNameBuildsBuildIdPatchRequestbodyContentApplicationJsonSchema, required: true } }, urlParameters: [ Parameters.$host, Parameters.ownerName, Parameters.appName, Parameters.buildId ], headerParameters: [Parameters.contentType, Parameters.accept], mediaType: "json", serializer }; const getStatusByAppIdOperationSpec: coreClient.OperationSpec = { path: "/v0.1/apps/{owner_name}/{app_name}/build_service_status", httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.PathsPo7UnwV01AppsOwnerNameAppNameBuildServiceStatusGetResponses200ContentApplicationJsonSchema }, default: {} }, urlParameters: [Parameters.$host, Parameters.ownerName, Parameters.appName], headerParameters: [Parameters.accept], serializer }; const listToolsetProjectsOperationSpec: coreClient.OperationSpec = { path: "/v0.1/apps/{owner_name}/{app_name}/branches/{branch}/toolset_projects", httpMethod: "GET", responses: { 200: { bodyMapper: Mappers.Paths17D5VcoV01AppsOwnerNameAppNameBranchesBranchToolsetProjectsGetResponses200ContentApplicationJsonSchema } }, queryParameters: [ Parameters.os, Parameters.platform, Parameters.maxSearchDepth ], urlParameters: [ Parameters.$host, Parameters.ownerName, Parameters.appName, Parameters.branch ], headerParameters: [Parameters.accept], serializer }; const listByBranchOperationSpec: coreClient.OperationSpec = { path: "/v0.1/apps/{owner_name}/{app_name}/branches/{branch}/builds", httpMethod: "GET", responses: { 200: { bodyMapper: { type: { name: "Sequence", element: { type: { name: "Composite", className: "PathsRyxelmV01AppsOwnerNameAppNameBranchesBranchBuildsGetResponses200ContentApplicationJsonSchemaItems" } } } } } }, urlParameters: [ Parameters.$host, Parameters.ownerName, Parameters.appName, Parameters.branch ], headerParameters: [Parameters.accept], serializer }; const createOperationSpec: coreClient.OperationSpec = { path: "/v0.1/apps/{owner_name}/{app_name}/branches/{branch}/builds", httpMethod: "POST", responses: { 200: { bodyMapper: Mappers.PathsIgnnsjV01AppsOwnerNameAppNameBranchesBranchBuildsPostResponses200ContentApplicationJsonSchema } }, requestBody: { parameterPath: { sourceVersion: ["options", "sourceVersion"], debug: ["options", "debug"] }, mapper: Mappers.Paths1Jgsne9V01AppsOwnerNameAppNameBranchesBranchBuildsPostRequestbodyContentApplicationJsonSchema }, urlParameters: [ Parameters.$host, Parameters.ownerName, Parameters.appName, Parameters.branch ], headerParameters: [Parameters.contentType, Parameters.accept], mediaType: "json", serializer }; const listBranchesOperationSpec: coreClient.OperationSpec = { path: "/v0.1/apps/{owner_name}/{app_name}/branches", httpMethod: "GET", responses: { 200: { bodyMapper: { type: { name: "Sequence", element: { type: { name: "Composite", className: "Paths5Mg2CrV01AppsOwnerNameAppNameBranchesGetResponses200ContentApplicationJsonSchemaItems" } } } } }, default: { bodyMapper: Mappers.Paths1WpnegrV01AppsOwnerNameAppNameBranchesGetResponsesDefaultContentApplicationJsonSchema } }, urlParameters: [Parameters.$host, Parameters.ownerName, Parameters.appName], headerParameters: [Parameters.accept], serializer };