/* * 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 UpdateProject operation. /// Changes the settings of a build project. /// public partial class UpdateProjectRequest : AmazonCodeBuildRequest { private ProjectArtifacts _artifacts; private bool? _badgeEnabled; private ProjectBuildBatchConfig _buildBatchConfig; private ProjectCache _cache; private int? _concurrentBuildLimit; private string _description; private string _encryptionKey; private ProjectEnvironment _environment; private List _fileSystemLocations = new List(); private LogsConfig _logsConfig; private string _name; private int? _queuedTimeoutInMinutes; private List _secondaryArtifacts = new List(); private List _secondarySources = new List(); private List _secondarySourceVersions = new List(); private string _serviceRole; private ProjectSource _source; private string _sourceVersion; private List _tags = new List(); private int? _timeoutInMinutes; private VpcConfig _vpcConfig; /// /// Gets and sets the property Artifacts. /// /// Information to be changed about the build output artifacts for the build project. /// /// public ProjectArtifacts Artifacts { get { return this._artifacts; } set { this._artifacts = value; } } // Check to see if Artifacts property is set internal bool IsSetArtifacts() { return this._artifacts != null; } /// /// Gets and sets the property BadgeEnabled. /// /// Set this to true to generate a publicly accessible URL for your project's build badge. /// /// public bool BadgeEnabled { get { return this._badgeEnabled.GetValueOrDefault(); } set { this._badgeEnabled = value; } } // Check to see if BadgeEnabled property is set internal bool IsSetBadgeEnabled() { return this._badgeEnabled.HasValue; } /// /// Gets and sets the property BuildBatchConfig. /// public ProjectBuildBatchConfig BuildBatchConfig { get { return this._buildBatchConfig; } set { this._buildBatchConfig = value; } } // Check to see if BuildBatchConfig property is set internal bool IsSetBuildBatchConfig() { return this._buildBatchConfig != null; } /// /// Gets and sets the property Cache. /// /// Stores recently used information so that it can be quickly accessed at a later time. /// /// public ProjectCache Cache { get { return this._cache; } set { this._cache = value; } } // Check to see if Cache property is set internal bool IsSetCache() { return this._cache != null; } /// /// Gets and sets the property ConcurrentBuildLimit. /// /// The maximum number of concurrent builds that are allowed for this project. /// /// /// /// New builds are only started if the current number of builds is less than or equal /// to this limit. If the current build count meets this limit, new builds are throttled /// and are not run. /// /// /// /// To remove this limit, set this value to -1. /// /// public int ConcurrentBuildLimit { get { return this._concurrentBuildLimit.GetValueOrDefault(); } set { this._concurrentBuildLimit = value; } } // Check to see if ConcurrentBuildLimit property is set internal bool IsSetConcurrentBuildLimit() { return this._concurrentBuildLimit.HasValue; } /// /// Gets and sets the property Description. /// /// A new or replacement description of the build project. /// /// [AWSProperty(Min=0, Max=255)] public string Description { get { return this._description; } set { this._description = value; } } // Check to see if Description property is set internal bool IsSetDescription() { return this._description != null; } /// /// Gets and sets the property EncryptionKey. /// /// The Key Management Service customer master key (CMK) to be used for encrypting 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 EncryptionKey { get { return this._encryptionKey; } set { this._encryptionKey = value; } } // Check to see if EncryptionKey property is set internal bool IsSetEncryptionKey() { return this._encryptionKey != null; } /// /// Gets and sets the property Environment. /// /// Information to be changed about the build environment for the build project. /// /// public ProjectEnvironment Environment { get { return this._environment; } set { this._environment = value; } } // Check to see if Environment property is set internal bool IsSetEnvironment() { return this._environment != null; } /// /// Gets and sets the property FileSystemLocations. /// /// An array of ProjectFileSystemLocation objects for a CodeBuild build /// project. A ProjectFileSystemLocation object specifies the identifier, /// location, mountOptions, mountPoint, and type /// of a file system created using Amazon Elastic File System. /// /// public List FileSystemLocations { get { return this._fileSystemLocations; } set { this._fileSystemLocations = value; } } // Check to see if FileSystemLocations property is set internal bool IsSetFileSystemLocations() { return this._fileSystemLocations != null && this._fileSystemLocations.Count > 0; } /// /// Gets and sets the property LogsConfig. /// /// Information about logs for the build project. A project can create logs in CloudWatch /// Logs, logs in an S3 bucket, or both. /// /// public LogsConfig LogsConfig { get { return this._logsConfig; } set { this._logsConfig = value; } } // Check to see if LogsConfig property is set internal bool IsSetLogsConfig() { return this._logsConfig != null; } /// /// Gets and sets the property Name. /// /// The name of the build project. /// /// /// /// You cannot change a build project's name. /// /// /// [AWSProperty(Required=true, Min=1)] public string Name { get { return this._name; } set { this._name = value; } } // Check to see if Name property is set internal bool IsSetName() { return this._name != null; } /// /// Gets and sets the property QueuedTimeoutInMinutes. /// /// The number of minutes a build is allowed to be queued before it times out. /// /// [AWSProperty(Min=5, Max=480)] public int QueuedTimeoutInMinutes { get { return this._queuedTimeoutInMinutes.GetValueOrDefault(); } set { this._queuedTimeoutInMinutes = value; } } // Check to see if QueuedTimeoutInMinutes property is set internal bool IsSetQueuedTimeoutInMinutes() { return this._queuedTimeoutInMinutes.HasValue; } /// /// Gets and sets the property SecondaryArtifacts. /// /// An array of ProjectArtifact objects. /// /// [AWSProperty(Min=0, Max=12)] public List SecondaryArtifacts { get { return this._secondaryArtifacts; } set { this._secondaryArtifacts = value; } } // Check to see if SecondaryArtifacts property is set internal bool IsSetSecondaryArtifacts() { return this._secondaryArtifacts != null && this._secondaryArtifacts.Count > 0; } /// /// Gets and sets the property SecondarySources. /// /// An array of ProjectSource objects. /// /// [AWSProperty(Min=0, Max=12)] public List SecondarySources { get { return this._secondarySources; } set { this._secondarySources = value; } } // Check to see if SecondarySources property is set internal bool IsSetSecondarySources() { return this._secondarySources != null && this._secondarySources.Count > 0; } /// /// Gets and sets the property SecondarySourceVersions. /// /// An array of ProjectSourceVersion objects. If secondarySourceVersions /// is specified at the build level, then they take over these secondarySourceVersions /// (at the project level). /// /// [AWSProperty(Min=0, Max=12)] public List SecondarySourceVersions { get { return this._secondarySourceVersions; } set { this._secondarySourceVersions = value; } } // Check to see if SecondarySourceVersions property is set internal bool IsSetSecondarySourceVersions() { return this._secondarySourceVersions != null && this._secondarySourceVersions.Count > 0; } /// /// Gets and sets the property ServiceRole. /// /// The replacement ARN of the IAM role that enables CodeBuild to interact with dependent /// Amazon Web Services services on behalf of the Amazon Web Services account. /// /// [AWSProperty(Min=1)] public string ServiceRole { get { return this._serviceRole; } set { this._serviceRole = value; } } // Check to see if ServiceRole property is set internal bool IsSetServiceRole() { return this._serviceRole != null; } /// /// Gets and sets the property Source. /// /// Information to be changed about the build input source code for the build project. /// /// public ProjectSource Source { get { return this._source; } set { this._source = value; } } // Check to see if Source property is set internal bool IsSetSource() { return this._source != null; } /// /// Gets and sets the property SourceVersion. /// /// A version of the build input to be built for this project. If not specified, the /// latest version is used. If specified, it must be one of: /// ///
  • /// /// For CodeCommit: the commit ID, branch, or Git tag to use. /// ///
  • /// /// For 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. /// ///
  • /// /// For 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. /// ///
  • /// /// For Amazon S3: the version ID of the object that represents the build input ZIP file /// to use. /// ///
/// /// If sourceVersion is specified at the build level, then that version /// takes precedence over this sourceVersion (at the project level). /// /// /// /// 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; } /// /// Gets and sets the property Tags. /// /// An updated list of tag key and value pairs associated with this build project. /// /// /// /// These tags are available for use by Amazon Web Services services that support CodeBuild /// build project tags. /// /// [AWSProperty(Min=0, Max=50)] public List Tags { get { return this._tags; } set { this._tags = value; } } // Check to see if Tags property is set internal bool IsSetTags() { return this._tags != null && this._tags.Count > 0; } /// /// Gets and sets the property TimeoutInMinutes. /// /// The replacement value in minutes, from 5 to 480 (8 hours), for CodeBuild to wait before /// timing out any related build that did not get marked as completed. /// /// [AWSProperty(Min=5, Max=480)] public int TimeoutInMinutes { get { return this._timeoutInMinutes.GetValueOrDefault(); } set { this._timeoutInMinutes = value; } } // Check to see if TimeoutInMinutes property is set internal bool IsSetTimeoutInMinutes() { return this._timeoutInMinutes.HasValue; } /// /// Gets and sets the property VpcConfig. /// /// VpcConfig enables CodeBuild to access resources in an Amazon VPC. /// /// public VpcConfig VpcConfig { get { return this._vpcConfig; } set { this._vpcConfig = value; } } // Check to see if VpcConfig property is set internal bool IsSetVpcConfig() { return this._vpcConfig != null; } } }