/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include namespace Aws { namespace Utils { namespace Json { class JsonValue; class JsonView; } // namespace Json } // namespace Utils namespace SecurityHub { namespace Model { /** *

Information about the build input source code for this build * project.

See Also:

AWS * API Reference

*/ class AwsCodeBuildProjectSource { public: AWS_SECURITYHUB_API AwsCodeBuildProjectSource(); AWS_SECURITYHUB_API AwsCodeBuildProjectSource(Aws::Utils::Json::JsonView jsonValue); AWS_SECURITYHUB_API AwsCodeBuildProjectSource& operator=(Aws::Utils::Json::JsonView jsonValue); AWS_SECURITYHUB_API Aws::Utils::Json::JsonValue Jsonize() const; /** *

The type of repository that contains the source code to be built. Valid * values are:

  • BITBUCKET - The source code is in a * Bitbucket repository.

  • CODECOMMIT - The source * code is in an CodeCommit repository.

  • * CODEPIPELINE - The source code settings are specified in the source * action of a pipeline in CodePipeline.

  • GITHUB - * The source code is in a GitHub repository.

  • * GITHUB_ENTERPRISE - The source code is in a GitHub Enterprise * repository.

  • NO_SOURCE - The project does not * have input source code.

  • S3 - The source code is * in an S3 input bucket.

*/ inline const Aws::String& GetType() const{ return m_type; } /** *

The type of repository that contains the source code to be built. Valid * values are:

  • BITBUCKET - The source code is in a * Bitbucket repository.

  • CODECOMMIT - The source * code is in an CodeCommit repository.

  • * CODEPIPELINE - The source code settings are specified in the source * action of a pipeline in CodePipeline.

  • GITHUB - * The source code is in a GitHub repository.

  • * GITHUB_ENTERPRISE - The source code is in a GitHub Enterprise * repository.

  • NO_SOURCE - The project does not * have input source code.

  • S3 - The source code is * in an S3 input bucket.

*/ inline bool TypeHasBeenSet() const { return m_typeHasBeenSet; } /** *

The type of repository that contains the source code to be built. Valid * values are:

  • BITBUCKET - The source code is in a * Bitbucket repository.

  • CODECOMMIT - The source * code is in an CodeCommit repository.

  • * CODEPIPELINE - The source code settings are specified in the source * action of a pipeline in CodePipeline.

  • GITHUB - * The source code is in a GitHub repository.

  • * GITHUB_ENTERPRISE - The source code is in a GitHub Enterprise * repository.

  • NO_SOURCE - The project does not * have input source code.

  • S3 - The source code is * in an S3 input bucket.

*/ inline void SetType(const Aws::String& value) { m_typeHasBeenSet = true; m_type = value; } /** *

The type of repository that contains the source code to be built. Valid * values are:

  • BITBUCKET - The source code is in a * Bitbucket repository.

  • CODECOMMIT - The source * code is in an CodeCommit repository.

  • * CODEPIPELINE - The source code settings are specified in the source * action of a pipeline in CodePipeline.

  • GITHUB - * The source code is in a GitHub repository.

  • * GITHUB_ENTERPRISE - The source code is in a GitHub Enterprise * repository.

  • NO_SOURCE - The project does not * have input source code.

  • S3 - The source code is * in an S3 input bucket.

*/ inline void SetType(Aws::String&& value) { m_typeHasBeenSet = true; m_type = std::move(value); } /** *

The type of repository that contains the source code to be built. Valid * values are:

  • BITBUCKET - The source code is in a * Bitbucket repository.

  • CODECOMMIT - The source * code is in an CodeCommit repository.

  • * CODEPIPELINE - The source code settings are specified in the source * action of a pipeline in CodePipeline.

  • GITHUB - * The source code is in a GitHub repository.

  • * GITHUB_ENTERPRISE - The source code is in a GitHub Enterprise * repository.

  • NO_SOURCE - The project does not * have input source code.

  • S3 - The source code is * in an S3 input bucket.

*/ inline void SetType(const char* value) { m_typeHasBeenSet = true; m_type.assign(value); } /** *

The type of repository that contains the source code to be built. Valid * values are:

  • BITBUCKET - The source code is in a * Bitbucket repository.

  • CODECOMMIT - The source * code is in an CodeCommit repository.

  • * CODEPIPELINE - The source code settings are specified in the source * action of a pipeline in CodePipeline.

  • GITHUB - * The source code is in a GitHub repository.

  • * GITHUB_ENTERPRISE - The source code is in a GitHub Enterprise * repository.

  • NO_SOURCE - The project does not * have input source code.

  • S3 - The source code is * in an S3 input bucket.

*/ inline AwsCodeBuildProjectSource& WithType(const Aws::String& value) { SetType(value); return *this;} /** *

The type of repository that contains the source code to be built. Valid * values are:

  • BITBUCKET - The source code is in a * Bitbucket repository.

  • CODECOMMIT - The source * code is in an CodeCommit repository.

  • * CODEPIPELINE - The source code settings are specified in the source * action of a pipeline in CodePipeline.

  • GITHUB - * The source code is in a GitHub repository.

  • * GITHUB_ENTERPRISE - The source code is in a GitHub Enterprise * repository.

  • NO_SOURCE - The project does not * have input source code.

  • S3 - The source code is * in an S3 input bucket.

*/ inline AwsCodeBuildProjectSource& WithType(Aws::String&& value) { SetType(std::move(value)); return *this;} /** *

The type of repository that contains the source code to be built. Valid * values are:

  • BITBUCKET - The source code is in a * Bitbucket repository.

  • CODECOMMIT - The source * code is in an CodeCommit repository.

  • * CODEPIPELINE - The source code settings are specified in the source * action of a pipeline in CodePipeline.

  • GITHUB - * The source code is in a GitHub repository.

  • * GITHUB_ENTERPRISE - The source code is in a GitHub Enterprise * repository.

  • NO_SOURCE - The project does not * have input source code.

  • S3 - The source code is * in an S3 input bucket.

*/ inline AwsCodeBuildProjectSource& WithType(const char* value) { SetType(value); return *this;} /** *

Information about the location of the source code to be built.

Valid * values include:

  • For source code settings that are specified in * the source action of a pipeline in CodePipeline, location should not be * specified. If it is specified, CodePipeline ignores it. This is because * CodePipeline uses the settings in a pipeline's source action instead of this * value.

  • For source code in an CodeCommit repository, the HTTPS * clone URL to the repository that contains the source code and the build spec * file (for example, * https://git-codecommit.region-ID.amazonaws.com/v1/repos/repo-name * ).

  • For source code in an S3 input bucket, one of the * following.

    • The path to the ZIP file that contains the source * code (for example, bucket-name/path/to/object-name.zip).

    • *
    • The path to the folder that contains the source code (for example, * bucket-name/path/to/source-code/folder/).

  • *
  • For source code in a GitHub repository, the HTTPS clone URL to the * repository that contains the source and the build spec file.

  • *

    For source code in a Bitbucket repository, the HTTPS clone URL to the * repository that contains the source and the build spec file.

*/ inline const Aws::String& GetLocation() const{ return m_location; } /** *

Information about the location of the source code to be built.

Valid * values include:

  • For source code settings that are specified in * the source action of a pipeline in CodePipeline, location should not be * specified. If it is specified, CodePipeline ignores it. This is because * CodePipeline uses the settings in a pipeline's source action instead of this * value.

  • For source code in an CodeCommit repository, the HTTPS * clone URL to the repository that contains the source code and the build spec * file (for example, * https://git-codecommit.region-ID.amazonaws.com/v1/repos/repo-name * ).

  • For source code in an S3 input bucket, one of the * following.

    • The path to the ZIP file that contains the source * code (for example, bucket-name/path/to/object-name.zip).

    • *
    • The path to the folder that contains the source code (for example, * bucket-name/path/to/source-code/folder/).

  • *
  • For source code in a GitHub repository, the HTTPS clone URL to the * repository that contains the source and the build spec file.

  • *

    For source code in a Bitbucket repository, the HTTPS clone URL to the * repository that contains the source and the build spec file.

*/ inline bool LocationHasBeenSet() const { return m_locationHasBeenSet; } /** *

Information about the location of the source code to be built.

Valid * values include:

  • For source code settings that are specified in * the source action of a pipeline in CodePipeline, location should not be * specified. If it is specified, CodePipeline ignores it. This is because * CodePipeline uses the settings in a pipeline's source action instead of this * value.

  • For source code in an CodeCommit repository, the HTTPS * clone URL to the repository that contains the source code and the build spec * file (for example, * https://git-codecommit.region-ID.amazonaws.com/v1/repos/repo-name * ).

  • For source code in an S3 input bucket, one of the * following.

    • The path to the ZIP file that contains the source * code (for example, bucket-name/path/to/object-name.zip).

    • *
    • The path to the folder that contains the source code (for example, * bucket-name/path/to/source-code/folder/).

  • *
  • For source code in a GitHub repository, the HTTPS clone URL to the * repository that contains the source and the build spec file.

  • *

    For source code in a Bitbucket repository, the HTTPS clone URL to the * repository that contains the source and the build spec file.

*/ inline void SetLocation(const Aws::String& value) { m_locationHasBeenSet = true; m_location = value; } /** *

Information about the location of the source code to be built.

Valid * values include:

  • For source code settings that are specified in * the source action of a pipeline in CodePipeline, location should not be * specified. If it is specified, CodePipeline ignores it. This is because * CodePipeline uses the settings in a pipeline's source action instead of this * value.

  • For source code in an CodeCommit repository, the HTTPS * clone URL to the repository that contains the source code and the build spec * file (for example, * https://git-codecommit.region-ID.amazonaws.com/v1/repos/repo-name * ).

  • For source code in an S3 input bucket, one of the * following.

    • The path to the ZIP file that contains the source * code (for example, bucket-name/path/to/object-name.zip).

    • *
    • The path to the folder that contains the source code (for example, * bucket-name/path/to/source-code/folder/).

  • *
  • For source code in a GitHub repository, the HTTPS clone URL to the * repository that contains the source and the build spec file.

  • *

    For source code in a Bitbucket repository, the HTTPS clone URL to the * repository that contains the source and the build spec file.

*/ inline void SetLocation(Aws::String&& value) { m_locationHasBeenSet = true; m_location = std::move(value); } /** *

Information about the location of the source code to be built.

Valid * values include:

  • For source code settings that are specified in * the source action of a pipeline in CodePipeline, location should not be * specified. If it is specified, CodePipeline ignores it. This is because * CodePipeline uses the settings in a pipeline's source action instead of this * value.

  • For source code in an CodeCommit repository, the HTTPS * clone URL to the repository that contains the source code and the build spec * file (for example, * https://git-codecommit.region-ID.amazonaws.com/v1/repos/repo-name * ).

  • For source code in an S3 input bucket, one of the * following.

    • The path to the ZIP file that contains the source * code (for example, bucket-name/path/to/object-name.zip).

    • *
    • The path to the folder that contains the source code (for example, * bucket-name/path/to/source-code/folder/).

  • *
  • For source code in a GitHub repository, the HTTPS clone URL to the * repository that contains the source and the build spec file.

  • *

    For source code in a Bitbucket repository, the HTTPS clone URL to the * repository that contains the source and the build spec file.

*/ inline void SetLocation(const char* value) { m_locationHasBeenSet = true; m_location.assign(value); } /** *

Information about the location of the source code to be built.

Valid * values include:

  • For source code settings that are specified in * the source action of a pipeline in CodePipeline, location should not be * specified. If it is specified, CodePipeline ignores it. This is because * CodePipeline uses the settings in a pipeline's source action instead of this * value.

  • For source code in an CodeCommit repository, the HTTPS * clone URL to the repository that contains the source code and the build spec * file (for example, * https://git-codecommit.region-ID.amazonaws.com/v1/repos/repo-name * ).

  • For source code in an S3 input bucket, one of the * following.

    • The path to the ZIP file that contains the source * code (for example, bucket-name/path/to/object-name.zip).

    • *
    • The path to the folder that contains the source code (for example, * bucket-name/path/to/source-code/folder/).

  • *
  • For source code in a GitHub repository, the HTTPS clone URL to the * repository that contains the source and the build spec file.

  • *

    For source code in a Bitbucket repository, the HTTPS clone URL to the * repository that contains the source and the build spec file.

*/ inline AwsCodeBuildProjectSource& WithLocation(const Aws::String& value) { SetLocation(value); return *this;} /** *

Information about the location of the source code to be built.

Valid * values include:

  • For source code settings that are specified in * the source action of a pipeline in CodePipeline, location should not be * specified. If it is specified, CodePipeline ignores it. This is because * CodePipeline uses the settings in a pipeline's source action instead of this * value.

  • For source code in an CodeCommit repository, the HTTPS * clone URL to the repository that contains the source code and the build spec * file (for example, * https://git-codecommit.region-ID.amazonaws.com/v1/repos/repo-name * ).

  • For source code in an S3 input bucket, one of the * following.

    • The path to the ZIP file that contains the source * code (for example, bucket-name/path/to/object-name.zip).

    • *
    • The path to the folder that contains the source code (for example, * bucket-name/path/to/source-code/folder/).

  • *
  • For source code in a GitHub repository, the HTTPS clone URL to the * repository that contains the source and the build spec file.

  • *

    For source code in a Bitbucket repository, the HTTPS clone URL to the * repository that contains the source and the build spec file.

*/ inline AwsCodeBuildProjectSource& WithLocation(Aws::String&& value) { SetLocation(std::move(value)); return *this;} /** *

Information about the location of the source code to be built.

Valid * values include:

  • For source code settings that are specified in * the source action of a pipeline in CodePipeline, location should not be * specified. If it is specified, CodePipeline ignores it. This is because * CodePipeline uses the settings in a pipeline's source action instead of this * value.

  • For source code in an CodeCommit repository, the HTTPS * clone URL to the repository that contains the source code and the build spec * file (for example, * https://git-codecommit.region-ID.amazonaws.com/v1/repos/repo-name * ).

  • For source code in an S3 input bucket, one of the * following.

    • The path to the ZIP file that contains the source * code (for example, bucket-name/path/to/object-name.zip).

    • *
    • The path to the folder that contains the source code (for example, * bucket-name/path/to/source-code/folder/).

  • *
  • For source code in a GitHub repository, the HTTPS clone URL to the * repository that contains the source and the build spec file.

  • *

    For source code in a Bitbucket repository, the HTTPS clone URL to the * repository that contains the source and the build spec file.

*/ inline AwsCodeBuildProjectSource& WithLocation(const char* value) { SetLocation(value); return *this;} /** *

Information about the Git clone depth for the build project.

*/ inline int GetGitCloneDepth() const{ return m_gitCloneDepth; } /** *

Information about the Git clone depth for the build project.

*/ inline bool GitCloneDepthHasBeenSet() const { return m_gitCloneDepthHasBeenSet; } /** *

Information about the Git clone depth for the build project.

*/ inline void SetGitCloneDepth(int value) { m_gitCloneDepthHasBeenSet = true; m_gitCloneDepth = value; } /** *

Information about the Git clone depth for the build project.

*/ inline AwsCodeBuildProjectSource& WithGitCloneDepth(int value) { SetGitCloneDepth(value); return *this;} /** *

Whether to ignore SSL warnings while connecting to the project source * code.

*/ inline bool GetInsecureSsl() const{ return m_insecureSsl; } /** *

Whether to ignore SSL warnings while connecting to the project source * code.

*/ inline bool InsecureSslHasBeenSet() const { return m_insecureSslHasBeenSet; } /** *

Whether to ignore SSL warnings while connecting to the project source * code.

*/ inline void SetInsecureSsl(bool value) { m_insecureSslHasBeenSet = true; m_insecureSsl = value; } /** *

Whether to ignore SSL warnings while connecting to the project source * code.

*/ inline AwsCodeBuildProjectSource& WithInsecureSsl(bool value) { SetInsecureSsl(value); return *this;} private: Aws::String m_type; bool m_typeHasBeenSet = false; Aws::String m_location; bool m_locationHasBeenSet = false; int m_gitCloneDepth; bool m_gitCloneDepthHasBeenSet = false; bool m_insecureSsl; bool m_insecureSslHasBeenSet = false; }; } // namespace Model } // namespace SecurityHub } // namespace Aws