import { Command as $Command } from "@smithy/smithy-client"; import type { MetadataBearer as __MetadataBearer } from "@smithy/types"; import type { DeviceFarmClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../DeviceFarmClient"; import type { ScheduleRunRequest, ScheduleRunResult } from "../models/models_0"; /** * @public */ export type { __MetadataBearer }; export { $Command }; /** * @public * * The input for {@link ScheduleRunCommand}. */ export interface ScheduleRunCommandInput extends ScheduleRunRequest { } /** * @public * * The output of {@link ScheduleRunCommand}. */ export interface ScheduleRunCommandOutput extends ScheduleRunResult, __MetadataBearer { } declare const ScheduleRunCommand_base: { new (input: ScheduleRunCommandInput): import("@smithy/smithy-client").CommandImpl; new (input: ScheduleRunCommandInput): import("@smithy/smithy-client").CommandImpl; getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions; }; /** *

Schedules a run.

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript * import { DeviceFarmClient, ScheduleRunCommand } from "@aws-sdk/client-device-farm"; // ES Modules import * // const { DeviceFarmClient, ScheduleRunCommand } = require("@aws-sdk/client-device-farm"); // CommonJS import * // import type { DeviceFarmClientConfig } from "@aws-sdk/client-device-farm"; * const config = {}; // type is DeviceFarmClientConfig * const client = new DeviceFarmClient(config); * const input = { // ScheduleRunRequest * projectArn: "STRING_VALUE", // required * appArn: "STRING_VALUE", * devicePoolArn: "STRING_VALUE", * deviceSelectionConfiguration: { // DeviceSelectionConfiguration * filters: [ // DeviceFilters // required * { // DeviceFilter * attribute: "ARN" || "PLATFORM" || "OS_VERSION" || "MODEL" || "AVAILABILITY" || "FORM_FACTOR" || "MANUFACTURER" || "REMOTE_ACCESS_ENABLED" || "REMOTE_DEBUG_ENABLED" || "INSTANCE_ARN" || "INSTANCE_LABELS" || "FLEET_TYPE", // required * operator: "EQUALS" || "LESS_THAN" || "LESS_THAN_OR_EQUALS" || "GREATER_THAN" || "GREATER_THAN_OR_EQUALS" || "IN" || "NOT_IN" || "CONTAINS", // required * values: [ // DeviceFilterValues // required * "STRING_VALUE", * ], * }, * ], * maxDevices: Number("int"), // required * }, * name: "STRING_VALUE", * test: { // ScheduleRunTest * type: "BUILTIN_FUZZ" || "APPIUM_JAVA_JUNIT" || "APPIUM_JAVA_TESTNG" || "APPIUM_PYTHON" || "APPIUM_NODE" || "APPIUM_RUBY" || "APPIUM_WEB_JAVA_JUNIT" || "APPIUM_WEB_JAVA_TESTNG" || "APPIUM_WEB_PYTHON" || "APPIUM_WEB_NODE" || "APPIUM_WEB_RUBY" || "INSTRUMENTATION" || "XCTEST" || "XCTEST_UI", // required * testPackageArn: "STRING_VALUE", * testSpecArn: "STRING_VALUE", * filter: "STRING_VALUE", * parameters: { // TestParameters * "": "STRING_VALUE", * }, * }, * configuration: { // ScheduleRunConfiguration * extraDataPackageArn: "STRING_VALUE", * networkProfileArn: "STRING_VALUE", * locale: "STRING_VALUE", * location: { // Location * latitude: Number("double"), // required * longitude: Number("double"), // required * }, * vpceConfigurationArns: [ // AmazonResourceNames * "STRING_VALUE", * ], * deviceProxy: { // DeviceProxy * host: "STRING_VALUE", // required * port: Number("int"), // required * }, * customerArtifactPaths: { // CustomerArtifactPaths * iosPaths: [ // IosPaths * "STRING_VALUE", * ], * androidPaths: [ // AndroidPaths * "STRING_VALUE", * ], * deviceHostPaths: [ // DeviceHostPaths * "STRING_VALUE", * ], * }, * radios: { // Radios * wifi: true || false, * bluetooth: true || false, * nfc: true || false, * gps: true || false, * }, * auxiliaryApps: [ * "STRING_VALUE", * ], * billingMethod: "METERED" || "UNMETERED", * environmentVariables: [ // EnvironmentVariables * { // EnvironmentVariable * name: "STRING_VALUE", // required * value: "STRING_VALUE", // required * }, * ], * executionRoleArn: "STRING_VALUE", * }, * executionConfiguration: { // ExecutionConfiguration * jobTimeoutMinutes: Number("int"), * accountsCleanup: true || false, * appPackagesCleanup: true || false, * videoCapture: true || false, * skipAppResign: true || false, * }, * }; * const command = new ScheduleRunCommand(input); * const response = await client.send(command); * // { // ScheduleRunResult * // run: { // Run * // arn: "STRING_VALUE", * // name: "STRING_VALUE", * // type: "BUILTIN_FUZZ" || "APPIUM_JAVA_JUNIT" || "APPIUM_JAVA_TESTNG" || "APPIUM_PYTHON" || "APPIUM_NODE" || "APPIUM_RUBY" || "APPIUM_WEB_JAVA_JUNIT" || "APPIUM_WEB_JAVA_TESTNG" || "APPIUM_WEB_PYTHON" || "APPIUM_WEB_NODE" || "APPIUM_WEB_RUBY" || "INSTRUMENTATION" || "XCTEST" || "XCTEST_UI", * // platform: "ANDROID" || "IOS", * // created: new Date("TIMESTAMP"), * // status: "PENDING" || "PENDING_CONCURRENCY" || "PENDING_DEVICE" || "PROCESSING" || "SCHEDULING" || "PREPARING" || "RUNNING" || "COMPLETED" || "STOPPING", * // result: "PENDING" || "PASSED" || "WARNED" || "FAILED" || "SKIPPED" || "ERRORED" || "STOPPED", * // started: new Date("TIMESTAMP"), * // stopped: new Date("TIMESTAMP"), * // counters: { // Counters * // total: Number("int"), * // passed: Number("int"), * // failed: Number("int"), * // warned: Number("int"), * // errored: Number("int"), * // stopped: Number("int"), * // skipped: Number("int"), * // }, * // message: "STRING_VALUE", * // totalJobs: Number("int"), * // completedJobs: Number("int"), * // billingMethod: "METERED" || "UNMETERED", * // deviceMinutes: { // DeviceMinutes * // total: Number("double"), * // metered: Number("double"), * // unmetered: Number("double"), * // }, * // networkProfile: { // NetworkProfile * // arn: "STRING_VALUE", * // name: "STRING_VALUE", * // description: "STRING_VALUE", * // type: "CURATED" || "PRIVATE", * // uplinkBandwidthBits: Number("long"), * // downlinkBandwidthBits: Number("long"), * // uplinkDelayMs: Number("long"), * // downlinkDelayMs: Number("long"), * // uplinkJitterMs: Number("long"), * // downlinkJitterMs: Number("long"), * // uplinkLossPercent: Number("int"), * // downlinkLossPercent: Number("int"), * // }, * // deviceProxy: { // DeviceProxy * // host: "STRING_VALUE", // required * // port: Number("int"), // required * // }, * // parsingResultUrl: "STRING_VALUE", * // resultCode: "PARSING_FAILED" || "VPC_ENDPOINT_SETUP_FAILED", * // seed: Number("int"), * // appUpload: "STRING_VALUE", * // eventCount: Number("int"), * // jobTimeoutMinutes: Number("int"), * // devicePoolArn: "STRING_VALUE", * // locale: "STRING_VALUE", * // radios: { // Radios * // wifi: true || false, * // bluetooth: true || false, * // nfc: true || false, * // gps: true || false, * // }, * // location: { // Location * // latitude: Number("double"), // required * // longitude: Number("double"), // required * // }, * // customerArtifactPaths: { // CustomerArtifactPaths * // iosPaths: [ // IosPaths * // "STRING_VALUE", * // ], * // androidPaths: [ // AndroidPaths * // "STRING_VALUE", * // ], * // deviceHostPaths: [ // DeviceHostPaths * // "STRING_VALUE", * // ], * // }, * // webUrl: "STRING_VALUE", * // skipAppResign: true || false, * // testSpecArn: "STRING_VALUE", * // deviceSelectionResult: { // DeviceSelectionResult * // filters: [ // DeviceFilters * // { // DeviceFilter * // attribute: "ARN" || "PLATFORM" || "OS_VERSION" || "MODEL" || "AVAILABILITY" || "FORM_FACTOR" || "MANUFACTURER" || "REMOTE_ACCESS_ENABLED" || "REMOTE_DEBUG_ENABLED" || "INSTANCE_ARN" || "INSTANCE_LABELS" || "FLEET_TYPE", // required * // operator: "EQUALS" || "LESS_THAN" || "LESS_THAN_OR_EQUALS" || "GREATER_THAN" || "GREATER_THAN_OR_EQUALS" || "IN" || "NOT_IN" || "CONTAINS", // required * // values: [ // DeviceFilterValues // required * // "STRING_VALUE", * // ], * // }, * // ], * // matchedDevicesCount: Number("int"), * // maxDevices: Number("int"), * // }, * // vpcConfig: { // VpcConfig * // securityGroupIds: [ // VpcSecurityGroupIds // required * // "STRING_VALUE", * // ], * // subnetIds: [ // VpcSubnetIds // required * // "STRING_VALUE", * // ], * // vpcId: "STRING_VALUE", // required * // }, * // executionRoleArn: "STRING_VALUE", * // environmentVariables: [ // EnvironmentVariables * // { // EnvironmentVariable * // name: "STRING_VALUE", // required * // value: "STRING_VALUE", // required * // }, * // ], * // }, * // }; * * ``` * * @param ScheduleRunCommandInput - {@link ScheduleRunCommandInput} * @returns {@link ScheduleRunCommandOutput} * @see {@link ScheduleRunCommandInput} for command's `input` shape. * @see {@link ScheduleRunCommandOutput} for command's `response` shape. * @see {@link DeviceFarmClientResolvedConfig | config} for DeviceFarmClient's `config` shape. * * @throws {@link ArgumentException} (client fault) *

An invalid argument was specified.

* * @throws {@link IdempotencyException} (client fault) *

An entity with the same name already exists.

* * @throws {@link LimitExceededException} (client fault) *

A limit was exceeded.

* * @throws {@link NotFoundException} (client fault) *

The specified entity was not found.

* * @throws {@link ServiceAccountException} (client fault) *

There was a problem with the service account.

* * @throws {@link DeviceFarmServiceException} *

Base exception class for all service exceptions from DeviceFarm service.

* * * @example To schedule a test run * ```javascript * // The following example schedules a test run named MyRun. * const input = { * devicePoolArn: "arn:aws:devicefarm:us-west-2:123456789101:pool:EXAMPLE-GUID-123-456", * name: "MyRun", * projectArn: "arn:aws:devicefarm:us-west-2:123456789101:project:EXAMPLE-GUID-123-456", * test: { * testPackageArn: "arn:aws:devicefarm:us-west-2:123456789101:test:EXAMPLE-GUID-123-456", * type: "APPIUM_JAVA_JUNIT" * } * }; * const command = new ScheduleRunCommand(input); * const response = await client.send(command); * /* response is * { * run: { /* empty *\/ } * } * *\/ * ``` * * @public */ export declare class ScheduleRunCommand extends ScheduleRunCommand_base { /** @internal type navigation helper, not in runtime. */ protected static __types: { api: { input: ScheduleRunRequest; output: ScheduleRunResult; }; sdk: { input: ScheduleRunCommandInput; output: ScheduleRunCommandOutput; }; }; }