/**
 * DevOps API
 * Use the DevOps API to create DevOps projects, configure code repositories,  add artifacts to deploy, build and test software applications, configure  target deployment environments, and deploy software applications.  For more information, see [DevOps](/Content/devops/using/home.htm).
 * OpenAPI spec version: 20210630
 *
 *
 * NOTE: This class is auto generated by OracleSDKGenerator.
 * Do not edit the class manually.
 *
 * Copyright (c) 2020, 2022, Oracle and/or its affiliates.  All rights reserved.
 * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
 */ import * as model from "../model" ; import common = require ( "oci-common" ) ; /**
 * Specifies the build stage.
 */ export interface BuildStage extends model . BuildPipelineStage { /**
     * Image name for the build environment.
     */ "image" : BuildStage . Image ; /**
     * The path to the build specification file for this environment. The default location of the file if not specified is build_spec.yaml.
     */ "buildSpecFile" ? : string ; /**
     * Timeout for the build stage execution. Specify value in seconds. Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues.
     */ "stageExecutionTimeoutInSeconds" ? : number ; "buildSourceCollection" : model . BuildSourceCollection ; /**
     * Name of the build source where the build_spec.yml file is located. If not specified, then the first entry in the build source collection is chosen as primary build source.
     */ "primaryBuildSource" ? : string ; "buildPipelineStageType" : string ; } export namespace BuildStage { export enum Image { Ol7X8664Standard10 = "OL7_X86_64_STANDARD_10" , /**
         * This value is used if a service returns a value for this enum that is not recognized by this
         * version of the SDK.
         */ UnknownValue = "UNKNOWN_VALUE" } export function getJsonObj ( obj , isParentJsonObj ? ) { const jsonObj = { ... ( isParentJsonObj ? obj : ( model . BuildPipelineStage . getJsonObj ( obj ) as BuildStage ) ) , ... { "buildSourceCollection" : obj . buildSourceCollection ? model . BuildSourceCollection . getJsonObj ( obj . buildSourceCollection ) : undefined } } ; return jsonObj ; } export const buildPipelineStageType = "BUILD" ; export function getDeserializedJsonObj ( obj , isParentJsonObj ? ) { const jsonObj = { ... ( isParentJsonObj ? obj : ( model . BuildPipelineStage . getDeserializedJsonObj ( obj ) as BuildStage ) ) , ... { "buildSourceCollection" : obj . buildSourceCollection ? model . BuildSourceCollection . getDeserializedJsonObj ( obj . buildSourceCollection ) : undefined } } ; return jsonObj ; } }