/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /* * Do not modify this file. This file is generated from the codebuild-2016-10-06.normal.json service model. */ using System; using System.Collections.Generic; using System.Xml.Serialization; using System.Text; using System.IO; using System.Net; using Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.CodeBuild.Model { /// /// Container for the parameters to the StartBuildBatch operation. /// Starts a batch build for a project. /// public partial class StartBuildBatchRequest : AmazonCodeBuildRequest { private ProjectArtifacts _artifactsOverride; private ProjectBuildBatchConfig _buildBatchConfigOverride; private string _buildspecOverride; private int? _buildTimeoutInMinutesOverride; private ProjectCache _cacheOverride; private string _certificateOverride; private ComputeType _computeTypeOverride; private bool? _debugSessionEnabled; private string _encryptionKeyOverride; private EnvironmentType _environmentTypeOverride; private List _environmentVariablesOverride = new List(); private int? _gitCloneDepthOverride; private GitSubmodulesConfig _gitSubmodulesConfigOverride; private string _idempotencyToken; private string _imageOverride; private ImagePullCredentialsType _imagePullCredentialsTypeOverride; private bool? _insecureSslOverride; private LogsConfig _logsConfigOverride; private bool? _privilegedModeOverride; private string _projectName; private int? _queuedTimeoutInMinutesOverride; private RegistryCredential _registryCredentialOverride; private bool? _reportBuildBatchStatusOverride; private List _secondaryArtifactsOverride = new List(); private List _secondarySourcesOverride = new List(); private List _secondarySourcesVersionOverride = new List(); private string _serviceRoleOverride; private SourceAuth _sourceAuthOverride; private string _sourceLocationOverride; private SourceType _sourceTypeOverride; private string _sourceVersion; /// /// Gets and sets the property ArtifactsOverride. /// /// An array of ProjectArtifacts objects that contains information about /// the build output artifact overrides for the build project. /// /// public ProjectArtifacts ArtifactsOverride { get { return this._artifactsOverride; } set { this._artifactsOverride = value; } } // Check to see if ArtifactsOverride property is set internal bool IsSetArtifactsOverride() { return this._artifactsOverride != null; } /// /// Gets and sets the property BuildBatchConfigOverride. /// /// A BuildBatchConfigOverride object that contains batch build configuration /// overrides. /// /// public ProjectBuildBatchConfig BuildBatchConfigOverride { get { return this._buildBatchConfigOverride; } set { this._buildBatchConfigOverride = value; } } // Check to see if BuildBatchConfigOverride property is set internal bool IsSetBuildBatchConfigOverride() { return this._buildBatchConfigOverride != null; } /// /// Gets and sets the property BuildspecOverride. /// /// A buildspec file declaration that overrides, for this build only, the latest one already /// defined in the build project. /// /// /// /// If this value is set, it can be either an inline buildspec definition, the path to /// an alternate buildspec file relative to the value of the built-in CODEBUILD_SRC_DIR /// environment variable, or the path to an S3 bucket. The bucket must be in the same /// Amazon Web Services Region as the build project. Specify the buildspec file using /// its ARN (for example, arn:aws:s3:::my-codebuild-sample2/buildspec.yml). /// If this value is not provided or is set to an empty string, the source code must contain /// a buildspec file in its root directory. For more information, see Buildspec /// File Name and Storage Location. /// /// public string BuildspecOverride { get { return this._buildspecOverride; } set { this._buildspecOverride = value; } } // Check to see if BuildspecOverride property is set internal bool IsSetBuildspecOverride() { return this._buildspecOverride != null; } /// /// Gets and sets the property BuildTimeoutInMinutesOverride. /// /// Overrides the build timeout specified in the batch build project. /// /// [AWSProperty(Min=5, Max=480)] public int BuildTimeoutInMinutesOverride { get { return this._buildTimeoutInMinutesOverride.GetValueOrDefault(); } set { this._buildTimeoutInMinutesOverride = value; } } // Check to see if BuildTimeoutInMinutesOverride property is set internal bool IsSetBuildTimeoutInMinutesOverride() { return this._buildTimeoutInMinutesOverride.HasValue; } /// /// Gets and sets the property CacheOverride. /// /// A ProjectCache object that specifies cache overrides. /// /// public ProjectCache CacheOverride { get { return this._cacheOverride; } set { this._cacheOverride = value; } } // Check to see if CacheOverride property is set internal bool IsSetCacheOverride() { return this._cacheOverride != null; } /// /// Gets and sets the property CertificateOverride. /// /// The name of a certificate for this batch build that overrides the one specified in /// the batch build project. /// /// public string CertificateOverride { get { return this._certificateOverride; } set { this._certificateOverride = value; } } // Check to see if CertificateOverride property is set internal bool IsSetCertificateOverride() { return this._certificateOverride != null; } /// /// Gets and sets the property ComputeTypeOverride. /// /// The name of a compute type for this batch build that overrides the one specified in /// the batch build project. /// /// public ComputeType ComputeTypeOverride { get { return this._computeTypeOverride; } set { this._computeTypeOverride = value; } } // Check to see if ComputeTypeOverride property is set internal bool IsSetComputeTypeOverride() { return this._computeTypeOverride != null; } /// /// Gets and sets the property DebugSessionEnabled. /// /// Specifies if session debugging is enabled for this batch build. For more information, /// see Viewing /// a running build in Session Manager. Batch session debugging is not supported for /// matrix batch builds. /// /// public bool DebugSessionEnabled { get { return this._debugSessionEnabled.GetValueOrDefault(); } set { this._debugSessionEnabled = value; } } // Check to see if DebugSessionEnabled property is set internal bool IsSetDebugSessionEnabled() { return this._debugSessionEnabled.HasValue; } /// /// Gets and sets the property EncryptionKeyOverride. /// /// The Key Management Service customer master key (CMK) that overrides the one specified /// in the batch build project. The CMK key encrypts the build output artifacts. /// /// /// /// You can use a cross-account KMS key to encrypt the build output artifacts if your /// service role has permission to that key. /// /// /// /// You can specify either the Amazon Resource Name (ARN) of the CMK or, if available, /// the CMK's alias (using the format alias/<alias-name>). /// /// [AWSProperty(Min=1)] public string EncryptionKeyOverride { get { return this._encryptionKeyOverride; } set { this._encryptionKeyOverride = value; } } // Check to see if EncryptionKeyOverride property is set internal bool IsSetEncryptionKeyOverride() { return this._encryptionKeyOverride != null; } /// /// Gets and sets the property EnvironmentTypeOverride. /// /// A container type for this batch build that overrides the one specified in the batch /// build project. /// /// public EnvironmentType EnvironmentTypeOverride { get { return this._environmentTypeOverride; } set { this._environmentTypeOverride = value; } } // Check to see if EnvironmentTypeOverride property is set internal bool IsSetEnvironmentTypeOverride() { return this._environmentTypeOverride != null; } /// /// Gets and sets the property EnvironmentVariablesOverride. /// /// An array of EnvironmentVariable objects that override, or add to, the /// environment variables defined in the batch build project. /// /// public List EnvironmentVariablesOverride { get { return this._environmentVariablesOverride; } set { this._environmentVariablesOverride = value; } } // Check to see if EnvironmentVariablesOverride property is set internal bool IsSetEnvironmentVariablesOverride() { return this._environmentVariablesOverride != null && this._environmentVariablesOverride.Count > 0; } /// /// Gets and sets the property GitCloneDepthOverride. /// /// The user-defined depth of history, with a minimum value of 0, that overrides, for /// this batch build only, any previous depth of history defined in the batch build project. /// /// [AWSProperty(Min=0)] public int GitCloneDepthOverride { get { return this._gitCloneDepthOverride.GetValueOrDefault(); } set { this._gitCloneDepthOverride = value; } } // Check to see if GitCloneDepthOverride property is set internal bool IsSetGitCloneDepthOverride() { return this._gitCloneDepthOverride.HasValue; } /// /// Gets and sets the property GitSubmodulesConfigOverride. /// /// A GitSubmodulesConfig object that overrides the Git submodules configuration /// for this batch build. /// /// public GitSubmodulesConfig GitSubmodulesConfigOverride { get { return this._gitSubmodulesConfigOverride; } set { this._gitSubmodulesConfigOverride = value; } } // Check to see if GitSubmodulesConfigOverride property is set internal bool IsSetGitSubmodulesConfigOverride() { return this._gitSubmodulesConfigOverride != null; } /// /// Gets and sets the property IdempotencyToken. /// /// A unique, case sensitive identifier you provide to ensure the idempotency of the StartBuildBatch /// request. The token is included in the StartBuildBatch request and is /// valid for five minutes. If you repeat the StartBuildBatch request with /// the same token, but change a parameter, CodeBuild returns a parameter mismatch error. /// /// public string IdempotencyToken { get { return this._idempotencyToken; } set { this._idempotencyToken = value; } } // Check to see if IdempotencyToken property is set internal bool IsSetIdempotencyToken() { return this._idempotencyToken != null; } /// /// Gets and sets the property ImageOverride. /// /// The name of an image for this batch build that overrides the one specified in the /// batch build project. /// /// [AWSProperty(Min=1)] public string ImageOverride { get { return this._imageOverride; } set { this._imageOverride = value; } } // Check to see if ImageOverride property is set internal bool IsSetImageOverride() { return this._imageOverride != null; } /// /// Gets and sets the property ImagePullCredentialsTypeOverride. /// /// The type of credentials CodeBuild uses to pull images in your batch build. There are /// two valid values: /// ///
CODEBUILD
/// /// Specifies that CodeBuild uses its own credentials. This requires that you modify your /// ECR repository policy to trust CodeBuild's service principal. /// ///
SERVICE_ROLE
/// /// Specifies that CodeBuild uses your build project's service role. /// ///
/// /// When using a cross-account or private registry image, you must use SERVICE_ROLE /// credentials. When using an CodeBuild curated image, you must use CODEBUILD /// credentials. /// ///
public ImagePullCredentialsType ImagePullCredentialsTypeOverride { get { return this._imagePullCredentialsTypeOverride; } set { this._imagePullCredentialsTypeOverride = value; } } // Check to see if ImagePullCredentialsTypeOverride property is set internal bool IsSetImagePullCredentialsTypeOverride() { return this._imagePullCredentialsTypeOverride != null; } /// /// Gets and sets the property InsecureSslOverride. /// /// Enable this flag to override the insecure SSL setting that is specified in the batch /// build project. The insecure SSL setting determines whether to ignore SSL warnings /// while connecting to the project source code. This override applies only if the build's /// source is GitHub Enterprise. /// /// public bool InsecureSslOverride { get { return this._insecureSslOverride.GetValueOrDefault(); } set { this._insecureSslOverride = value; } } // Check to see if InsecureSslOverride property is set internal bool IsSetInsecureSslOverride() { return this._insecureSslOverride.HasValue; } /// /// Gets and sets the property LogsConfigOverride. /// /// A LogsConfig object that override the log settings defined in the batch /// build project. /// /// public LogsConfig LogsConfigOverride { get { return this._logsConfigOverride; } set { this._logsConfigOverride = value; } } // Check to see if LogsConfigOverride property is set internal bool IsSetLogsConfigOverride() { return this._logsConfigOverride != null; } /// /// Gets and sets the property PrivilegedModeOverride. /// /// Enable this flag to override privileged mode in the batch build project. /// /// public bool PrivilegedModeOverride { get { return this._privilegedModeOverride.GetValueOrDefault(); } set { this._privilegedModeOverride = value; } } // Check to see if PrivilegedModeOverride property is set internal bool IsSetPrivilegedModeOverride() { return this._privilegedModeOverride.HasValue; } /// /// Gets and sets the property ProjectName. /// /// The name of the project. /// /// [AWSProperty(Required=true, Min=1)] public string ProjectName { get { return this._projectName; } set { this._projectName = value; } } // Check to see if ProjectName property is set internal bool IsSetProjectName() { return this._projectName != null; } /// /// Gets and sets the property QueuedTimeoutInMinutesOverride. /// /// The number of minutes a batch build is allowed to be queued before it times out. /// /// [AWSProperty(Min=5, Max=480)] public int QueuedTimeoutInMinutesOverride { get { return this._queuedTimeoutInMinutesOverride.GetValueOrDefault(); } set { this._queuedTimeoutInMinutesOverride = value; } } // Check to see if QueuedTimeoutInMinutesOverride property is set internal bool IsSetQueuedTimeoutInMinutesOverride() { return this._queuedTimeoutInMinutesOverride.HasValue; } /// /// Gets and sets the property RegistryCredentialOverride. /// /// A RegistryCredential object that overrides credentials for access to /// a private registry. /// /// public RegistryCredential RegistryCredentialOverride { get { return this._registryCredentialOverride; } set { this._registryCredentialOverride = value; } } // Check to see if RegistryCredentialOverride property is set internal bool IsSetRegistryCredentialOverride() { return this._registryCredentialOverride != null; } /// /// Gets and sets the property ReportBuildBatchStatusOverride. /// /// Set to true to report to your source provider the status of a batch build's /// start and completion. If you use this option with a source provider other than GitHub, /// GitHub Enterprise, or Bitbucket, an invalidInputException is thrown. /// /// /// /// /// The status of a build triggered by a webhook is always reported to your source provider. /// /// /// /// public bool ReportBuildBatchStatusOverride { get { return this._reportBuildBatchStatusOverride.GetValueOrDefault(); } set { this._reportBuildBatchStatusOverride = value; } } // Check to see if ReportBuildBatchStatusOverride property is set internal bool IsSetReportBuildBatchStatusOverride() { return this._reportBuildBatchStatusOverride.HasValue; } /// /// Gets and sets the property SecondaryArtifactsOverride. /// /// An array of ProjectArtifacts objects that override the secondary artifacts /// defined in the batch build project. /// /// [AWSProperty(Min=0, Max=12)] public List SecondaryArtifactsOverride { get { return this._secondaryArtifactsOverride; } set { this._secondaryArtifactsOverride = value; } } // Check to see if SecondaryArtifactsOverride property is set internal bool IsSetSecondaryArtifactsOverride() { return this._secondaryArtifactsOverride != null && this._secondaryArtifactsOverride.Count > 0; } /// /// Gets and sets the property SecondarySourcesOverride. /// /// An array of ProjectSource objects that override the secondary sources /// defined in the batch build project. /// /// [AWSProperty(Min=0, Max=12)] public List SecondarySourcesOverride { get { return this._secondarySourcesOverride; } set { this._secondarySourcesOverride = value; } } // Check to see if SecondarySourcesOverride property is set internal bool IsSetSecondarySourcesOverride() { return this._secondarySourcesOverride != null && this._secondarySourcesOverride.Count > 0; } /// /// Gets and sets the property SecondarySourcesVersionOverride. /// /// An array of ProjectSourceVersion objects that override the secondary /// source versions in the batch build project. /// /// [AWSProperty(Min=0, Max=12)] public List SecondarySourcesVersionOverride { get { return this._secondarySourcesVersionOverride; } set { this._secondarySourcesVersionOverride = value; } } // Check to see if SecondarySourcesVersionOverride property is set internal bool IsSetSecondarySourcesVersionOverride() { return this._secondarySourcesVersionOverride != null && this._secondarySourcesVersionOverride.Count > 0; } /// /// Gets and sets the property ServiceRoleOverride. /// /// The name of a service role for this batch build that overrides the one specified in /// the batch build project. /// /// [AWSProperty(Min=1)] public string ServiceRoleOverride { get { return this._serviceRoleOverride; } set { this._serviceRoleOverride = value; } } // Check to see if ServiceRoleOverride property is set internal bool IsSetServiceRoleOverride() { return this._serviceRoleOverride != null; } /// /// Gets and sets the property SourceAuthOverride. /// /// A SourceAuth object that overrides the one defined in the batch build /// project. This override applies only if the build project's source is BitBucket or /// GitHub. /// /// public SourceAuth SourceAuthOverride { get { return this._sourceAuthOverride; } set { this._sourceAuthOverride = value; } } // Check to see if SourceAuthOverride property is set internal bool IsSetSourceAuthOverride() { return this._sourceAuthOverride != null; } /// /// Gets and sets the property SourceLocationOverride. /// /// A location that overrides, for this batch build, the source location defined in the /// batch build project. /// /// public string SourceLocationOverride { get { return this._sourceLocationOverride; } set { this._sourceLocationOverride = value; } } // Check to see if SourceLocationOverride property is set internal bool IsSetSourceLocationOverride() { return this._sourceLocationOverride != null; } /// /// Gets and sets the property SourceTypeOverride. /// /// The source input type that overrides the source input defined in the batch build project. /// /// public SourceType SourceTypeOverride { get { return this._sourceTypeOverride; } set { this._sourceTypeOverride = value; } } // Check to see if SourceTypeOverride property is set internal bool IsSetSourceTypeOverride() { return this._sourceTypeOverride != null; } /// /// Gets and sets the property SourceVersion. /// /// The version of the batch build input to be built, for this build only. If not specified, /// the latest version is used. If specified, the contents depends on the source provider: /// ///
CodeCommit
/// /// The commit ID, branch, or Git tag to use. /// ///
GitHub
/// /// The commit ID, pull request ID, branch name, or tag name that corresponds to the version /// of the source code you want to build. If a pull request ID is specified, it must use /// the format pr/pull-request-ID (for example pr/25). If a /// branch name is specified, the branch's HEAD commit ID is used. If not specified, the /// default branch's HEAD commit ID is used. /// ///
Bitbucket
/// /// The commit ID, branch name, or tag name that corresponds to the version of the source /// code you want to build. If a branch name is specified, the branch's HEAD commit ID /// is used. If not specified, the default branch's HEAD commit ID is used. /// ///
Amazon S3
/// /// The version ID of the object that represents the build input ZIP file to use. /// ///
/// /// If sourceVersion is specified at the project level, then this sourceVersion /// (at the build level) takes precedence. /// /// /// /// For more information, see Source /// Version Sample with CodeBuild in the CodeBuild User Guide. /// ///
public string SourceVersion { get { return this._sourceVersion; } set { this._sourceVersion = value; } } // Check to see if SourceVersion property is set internal bool IsSetSourceVersion() { return this._sourceVersion != null; } } }