UNPKG

@twilio-labs/serverless-api

Version:
67 lines (66 loc) 3.03 kB
/** @module @twilio-labs/serverless-api/dist/api */ /// <reference types="node" /> import { TwilioServerlessApiClient } from '../client'; import { BuildConfig, BuildResource, BuildStatus } from '../types'; import events = require('events'); /** * Retrieves a specific build by its SID * * @export * @param {string} buildSid SID of build to retrieve * @param {string} serviceSid service to retrieve build from * @param {TwilioServerlessApiClient} client API client * @returns {Promise<BuildResource>} */ export declare function getBuild(buildSid: string, serviceSid: string, client: TwilioServerlessApiClient): Promise<BuildResource>; /** * Returns the current status of a build given its SID * * @param {string} buildSid the SID of the build * @param {string} serviceSid the SID of the service the build belongs to * @param {TwilioServerlessApiClient} client API client * @returns {Promise<BuildStatus>} */ export declare function getBuildStatus(buildSid: string, serviceSid: string, client: TwilioServerlessApiClient): Promise<BuildStatus>; /** * Returns a list of all builds related to service * * @export * @param {string} serviceSid the SID of the service * @param {TwilioServerlessApiClient} client API client * @returns {Promise<BuildResource[]>} */ export declare function listBuilds(serviceSid: string, client: TwilioServerlessApiClient): Promise<BuildResource[]>; /** * Triggers a new build by creating it * * @export * @param {BuildConfig} config build-related information (functions, assets, dependencies) * @param {string} serviceSid the service to create the build for * @param {TwilioServerlessApiClient} client API client * @returns {Promise<BuildResource>} */ export declare function triggerBuild(config: BuildConfig, serviceSid: string, client: TwilioServerlessApiClient): Promise<BuildResource>; /** * Resolves only when build has been completed. Will timeout after specified time. * * @export * @param {string} buildSid the build to wait for * @param {string} serviceSid the service of the build * @param {TwilioServerlessApiClient} client API client * @param {events.EventEmitter} eventEmitter optional event emitter to communicate current build status * @param {number} timeout optional timeout. default: 5 minutes * @returns {Promise<void>} */ export declare function waitForSuccessfulBuild(buildSid: string, serviceSid: string, client: TwilioServerlessApiClient, eventEmitter: events.EventEmitter, timeout?: number): Promise<void>; /** * Activates a specific build for a given environment by creating a new deployment * * @export * @param {string} buildSid the build to be activated * @param {string} environmentSid the target environment for the build to be deployed to * @param {string} serviceSid the service of the project * @param {TwilioServerlessApiClient} client API client * @returns {Promise<any>} */ export declare function activateBuild(buildSid: string, environmentSid: string, serviceSid: string, client: TwilioServerlessApiClient): Promise<any>;