/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Information about the build environment of the build project.See
* Also:
AWS
* API Reference
The type of build environment to use for related builds.
The
* environment type ARM_CONTAINER is available only in regions US East
* (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), Asia Pacific
* (Mumbai), Asia Pacific (Tokyo), Asia Pacific (Sydney), and EU (Frankfurt).
The environment type LINUX_CONTAINER with compute
* type build.general1.2xlarge is available only in regions US East
* (N. Virginia), US East (Ohio), US West (Oregon), Canada (Central), EU (Ireland),
* EU (London), EU (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Seoul), Asia
* Pacific (Singapore), Asia Pacific (Sydney), China (Beijing), and China
* (Ningxia).
The environment type
* LINUX_GPU_CONTAINER is available only in regions US East (N.
* Virginia), US East (Ohio), US West (Oregon), Canada (Central), EU (Ireland), EU
* (London), EU (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Seoul), Asia
* Pacific (Singapore), Asia Pacific (Sydney) , China (Beijing), and China
* (Ningxia).
The type of build environment to use for related builds.
The
* environment type ARM_CONTAINER is available only in regions US East
* (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), Asia Pacific
* (Mumbai), Asia Pacific (Tokyo), Asia Pacific (Sydney), and EU (Frankfurt).
The environment type LINUX_CONTAINER with compute
* type build.general1.2xlarge is available only in regions US East
* (N. Virginia), US East (Ohio), US West (Oregon), Canada (Central), EU (Ireland),
* EU (London), EU (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Seoul), Asia
* Pacific (Singapore), Asia Pacific (Sydney), China (Beijing), and China
* (Ningxia).
The environment type
* LINUX_GPU_CONTAINER is available only in regions US East (N.
* Virginia), US East (Ohio), US West (Oregon), Canada (Central), EU (Ireland), EU
* (London), EU (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Seoul), Asia
* Pacific (Singapore), Asia Pacific (Sydney) , China (Beijing), and China
* (Ningxia).
The type of build environment to use for related builds.
The
* environment type ARM_CONTAINER is available only in regions US East
* (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), Asia Pacific
* (Mumbai), Asia Pacific (Tokyo), Asia Pacific (Sydney), and EU (Frankfurt).
The environment type LINUX_CONTAINER with compute
* type build.general1.2xlarge is available only in regions US East
* (N. Virginia), US East (Ohio), US West (Oregon), Canada (Central), EU (Ireland),
* EU (London), EU (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Seoul), Asia
* Pacific (Singapore), Asia Pacific (Sydney), China (Beijing), and China
* (Ningxia).
The environment type
* LINUX_GPU_CONTAINER is available only in regions US East (N.
* Virginia), US East (Ohio), US West (Oregon), Canada (Central), EU (Ireland), EU
* (London), EU (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Seoul), Asia
* Pacific (Singapore), Asia Pacific (Sydney) , China (Beijing), and China
* (Ningxia).
The type of build environment to use for related builds.
The
* environment type ARM_CONTAINER is available only in regions US East
* (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), Asia Pacific
* (Mumbai), Asia Pacific (Tokyo), Asia Pacific (Sydney), and EU (Frankfurt).
The environment type LINUX_CONTAINER with compute
* type build.general1.2xlarge is available only in regions US East
* (N. Virginia), US East (Ohio), US West (Oregon), Canada (Central), EU (Ireland),
* EU (London), EU (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Seoul), Asia
* Pacific (Singapore), Asia Pacific (Sydney), China (Beijing), and China
* (Ningxia).
The environment type
* LINUX_GPU_CONTAINER is available only in regions US East (N.
* Virginia), US East (Ohio), US West (Oregon), Canada (Central), EU (Ireland), EU
* (London), EU (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Seoul), Asia
* Pacific (Singapore), Asia Pacific (Sydney) , China (Beijing), and China
* (Ningxia).
The type of build environment to use for related builds.
The
* environment type ARM_CONTAINER is available only in regions US East
* (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), Asia Pacific
* (Mumbai), Asia Pacific (Tokyo), Asia Pacific (Sydney), and EU (Frankfurt).
The environment type LINUX_CONTAINER with compute
* type build.general1.2xlarge is available only in regions US East
* (N. Virginia), US East (Ohio), US West (Oregon), Canada (Central), EU (Ireland),
* EU (London), EU (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Seoul), Asia
* Pacific (Singapore), Asia Pacific (Sydney), China (Beijing), and China
* (Ningxia).
The environment type
* LINUX_GPU_CONTAINER is available only in regions US East (N.
* Virginia), US East (Ohio), US West (Oregon), Canada (Central), EU (Ireland), EU
* (London), EU (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Seoul), Asia
* Pacific (Singapore), Asia Pacific (Sydney) , China (Beijing), and China
* (Ningxia).
The type of build environment to use for related builds.
The
* environment type ARM_CONTAINER is available only in regions US East
* (N. Virginia), US East (Ohio), US West (Oregon), EU (Ireland), Asia Pacific
* (Mumbai), Asia Pacific (Tokyo), Asia Pacific (Sydney), and EU (Frankfurt).
The environment type LINUX_CONTAINER with compute
* type build.general1.2xlarge is available only in regions US East
* (N. Virginia), US East (Ohio), US West (Oregon), Canada (Central), EU (Ireland),
* EU (London), EU (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Seoul), Asia
* Pacific (Singapore), Asia Pacific (Sydney), China (Beijing), and China
* (Ningxia).
The environment type
* LINUX_GPU_CONTAINER is available only in regions US East (N.
* Virginia), US East (Ohio), US West (Oregon), Canada (Central), EU (Ireland), EU
* (London), EU (Frankfurt), Asia Pacific (Tokyo), Asia Pacific (Seoul), Asia
* Pacific (Singapore), Asia Pacific (Sydney) , China (Beijing), and China
* (Ningxia).
The image tag or image digest that identifies the Docker image to use for * this build project. Use the following formats:
For an image
* tag: registry/repository:tag. For example, to specify an image with
* the tag "latest," use registry/repository:latest.
For an image digest: registry/repository@digest. For example, to
* specify an image with the digest
* "sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0382cfbdbf," use
* registry/repository@sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0382cfbdbf.
The image tag or image digest that identifies the Docker image to use for * this build project. Use the following formats:
For an image
* tag: registry/repository:tag. For example, to specify an image with
* the tag "latest," use registry/repository:latest.
For an image digest: registry/repository@digest. For example, to
* specify an image with the digest
* "sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0382cfbdbf," use
* registry/repository@sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0382cfbdbf.
The image tag or image digest that identifies the Docker image to use for * this build project. Use the following formats:
For an image
* tag: registry/repository:tag. For example, to specify an image with
* the tag "latest," use registry/repository:latest.
For an image digest: registry/repository@digest. For example, to
* specify an image with the digest
* "sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0382cfbdbf," use
* registry/repository@sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0382cfbdbf.
The image tag or image digest that identifies the Docker image to use for * this build project. Use the following formats:
For an image
* tag: registry/repository:tag. For example, to specify an image with
* the tag "latest," use registry/repository:latest.
For an image digest: registry/repository@digest. For example, to
* specify an image with the digest
* "sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0382cfbdbf," use
* registry/repository@sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0382cfbdbf.
The image tag or image digest that identifies the Docker image to use for * this build project. Use the following formats:
For an image
* tag: registry/repository:tag. For example, to specify an image with
* the tag "latest," use registry/repository:latest.
For an image digest: registry/repository@digest. For example, to
* specify an image with the digest
* "sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0382cfbdbf," use
* registry/repository@sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0382cfbdbf.
The image tag or image digest that identifies the Docker image to use for * this build project. Use the following formats:
For an image
* tag: registry/repository:tag. For example, to specify an image with
* the tag "latest," use registry/repository:latest.
For an image digest: registry/repository@digest. For example, to
* specify an image with the digest
* "sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0382cfbdbf," use
* registry/repository@sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0382cfbdbf.
The image tag or image digest that identifies the Docker image to use for * this build project. Use the following formats:
For an image
* tag: registry/repository:tag. For example, to specify an image with
* the tag "latest," use registry/repository:latest.
For an image digest: registry/repository@digest. For example, to
* specify an image with the digest
* "sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0382cfbdbf," use
* registry/repository@sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0382cfbdbf.
The image tag or image digest that identifies the Docker image to use for * this build project. Use the following formats:
For an image
* tag: registry/repository:tag. For example, to specify an image with
* the tag "latest," use registry/repository:latest.
For an image digest: registry/repository@digest. For example, to
* specify an image with the digest
* "sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0382cfbdbf," use
* registry/repository@sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0382cfbdbf.
Information about the compute resources the build project uses. Available * values include:
BUILD_GENERAL1_SMALL: Use up to 3
* GB memory and 2 vCPUs for builds.
* BUILD_GENERAL1_MEDIUM: Use up to 7 GB memory and 4 vCPUs for
* builds.
BUILD_GENERAL1_LARGE: Use up to 16 GB
* memory and 8 vCPUs for builds, depending on your environment type.
BUILD_GENERAL1_2XLARGE: Use up to 145 GB memory, 72 vCPUs,
* and 824 GB of SSD storage for builds. This compute type supports Docker images
* up to 100 GB uncompressed.
If you use
* BUILD_GENERAL1_LARGE:
For environment type
* LINUX_CONTAINER, you can use up to 15 GB memory and 8 vCPUs for
* builds.
For environment type
* LINUX_GPU_CONTAINER, you can use up to 255 GB memory, 32 vCPUs, and
* 4 NVIDIA Tesla V100 GPUs for builds.
For environment type
* ARM_CONTAINER, you can use up to 16 GB memory and 8 vCPUs on
* ARM-based processors for builds.
For more information, see * Build * Environment Compute Types in the AWS CodeBuild User Guide.
*/ inline const ComputeType& GetComputeType() const{ return m_computeType; } /** *Information about the compute resources the build project uses. Available * values include:
BUILD_GENERAL1_SMALL: Use up to 3
* GB memory and 2 vCPUs for builds.
* BUILD_GENERAL1_MEDIUM: Use up to 7 GB memory and 4 vCPUs for
* builds.
BUILD_GENERAL1_LARGE: Use up to 16 GB
* memory and 8 vCPUs for builds, depending on your environment type.
BUILD_GENERAL1_2XLARGE: Use up to 145 GB memory, 72 vCPUs,
* and 824 GB of SSD storage for builds. This compute type supports Docker images
* up to 100 GB uncompressed.
If you use
* BUILD_GENERAL1_LARGE:
For environment type
* LINUX_CONTAINER, you can use up to 15 GB memory and 8 vCPUs for
* builds.
For environment type
* LINUX_GPU_CONTAINER, you can use up to 255 GB memory, 32 vCPUs, and
* 4 NVIDIA Tesla V100 GPUs for builds.
For environment type
* ARM_CONTAINER, you can use up to 16 GB memory and 8 vCPUs on
* ARM-based processors for builds.
For more information, see * Build * Environment Compute Types in the AWS CodeBuild User Guide.
*/ inline bool ComputeTypeHasBeenSet() const { return m_computeTypeHasBeenSet; } /** *Information about the compute resources the build project uses. Available * values include:
BUILD_GENERAL1_SMALL: Use up to 3
* GB memory and 2 vCPUs for builds.
* BUILD_GENERAL1_MEDIUM: Use up to 7 GB memory and 4 vCPUs for
* builds.
BUILD_GENERAL1_LARGE: Use up to 16 GB
* memory and 8 vCPUs for builds, depending on your environment type.
BUILD_GENERAL1_2XLARGE: Use up to 145 GB memory, 72 vCPUs,
* and 824 GB of SSD storage for builds. This compute type supports Docker images
* up to 100 GB uncompressed.
If you use
* BUILD_GENERAL1_LARGE:
For environment type
* LINUX_CONTAINER, you can use up to 15 GB memory and 8 vCPUs for
* builds.
For environment type
* LINUX_GPU_CONTAINER, you can use up to 255 GB memory, 32 vCPUs, and
* 4 NVIDIA Tesla V100 GPUs for builds.
For environment type
* ARM_CONTAINER, you can use up to 16 GB memory and 8 vCPUs on
* ARM-based processors for builds.
For more information, see * Build * Environment Compute Types in the AWS CodeBuild User Guide.
*/ inline void SetComputeType(const ComputeType& value) { m_computeTypeHasBeenSet = true; m_computeType = value; } /** *Information about the compute resources the build project uses. Available * values include:
BUILD_GENERAL1_SMALL: Use up to 3
* GB memory and 2 vCPUs for builds.
* BUILD_GENERAL1_MEDIUM: Use up to 7 GB memory and 4 vCPUs for
* builds.
BUILD_GENERAL1_LARGE: Use up to 16 GB
* memory and 8 vCPUs for builds, depending on your environment type.
BUILD_GENERAL1_2XLARGE: Use up to 145 GB memory, 72 vCPUs,
* and 824 GB of SSD storage for builds. This compute type supports Docker images
* up to 100 GB uncompressed.
If you use
* BUILD_GENERAL1_LARGE:
For environment type
* LINUX_CONTAINER, you can use up to 15 GB memory and 8 vCPUs for
* builds.
For environment type
* LINUX_GPU_CONTAINER, you can use up to 255 GB memory, 32 vCPUs, and
* 4 NVIDIA Tesla V100 GPUs for builds.
For environment type
* ARM_CONTAINER, you can use up to 16 GB memory and 8 vCPUs on
* ARM-based processors for builds.
For more information, see * Build * Environment Compute Types in the AWS CodeBuild User Guide.
*/ inline void SetComputeType(ComputeType&& value) { m_computeTypeHasBeenSet = true; m_computeType = std::move(value); } /** *Information about the compute resources the build project uses. Available * values include:
BUILD_GENERAL1_SMALL: Use up to 3
* GB memory and 2 vCPUs for builds.
* BUILD_GENERAL1_MEDIUM: Use up to 7 GB memory and 4 vCPUs for
* builds.
BUILD_GENERAL1_LARGE: Use up to 16 GB
* memory and 8 vCPUs for builds, depending on your environment type.
BUILD_GENERAL1_2XLARGE: Use up to 145 GB memory, 72 vCPUs,
* and 824 GB of SSD storage for builds. This compute type supports Docker images
* up to 100 GB uncompressed.
If you use
* BUILD_GENERAL1_LARGE:
For environment type
* LINUX_CONTAINER, you can use up to 15 GB memory and 8 vCPUs for
* builds.
For environment type
* LINUX_GPU_CONTAINER, you can use up to 255 GB memory, 32 vCPUs, and
* 4 NVIDIA Tesla V100 GPUs for builds.
For environment type
* ARM_CONTAINER, you can use up to 16 GB memory and 8 vCPUs on
* ARM-based processors for builds.
For more information, see * Build * Environment Compute Types in the AWS CodeBuild User Guide.
*/ inline ProjectEnvironment& WithComputeType(const ComputeType& value) { SetComputeType(value); return *this;} /** *Information about the compute resources the build project uses. Available * values include:
BUILD_GENERAL1_SMALL: Use up to 3
* GB memory and 2 vCPUs for builds.
* BUILD_GENERAL1_MEDIUM: Use up to 7 GB memory and 4 vCPUs for
* builds.
BUILD_GENERAL1_LARGE: Use up to 16 GB
* memory and 8 vCPUs for builds, depending on your environment type.
BUILD_GENERAL1_2XLARGE: Use up to 145 GB memory, 72 vCPUs,
* and 824 GB of SSD storage for builds. This compute type supports Docker images
* up to 100 GB uncompressed.
If you use
* BUILD_GENERAL1_LARGE:
For environment type
* LINUX_CONTAINER, you can use up to 15 GB memory and 8 vCPUs for
* builds.
For environment type
* LINUX_GPU_CONTAINER, you can use up to 255 GB memory, 32 vCPUs, and
* 4 NVIDIA Tesla V100 GPUs for builds.
For environment type
* ARM_CONTAINER, you can use up to 16 GB memory and 8 vCPUs on
* ARM-based processors for builds.
For more information, see * Build * Environment Compute Types in the AWS CodeBuild User Guide.
*/ inline ProjectEnvironment& WithComputeType(ComputeType&& value) { SetComputeType(std::move(value)); return *this;} /** *A set of environment variables to make available to builds for this build * project.
*/ inline const Aws::VectorA set of environment variables to make available to builds for this build * project.
*/ inline bool EnvironmentVariablesHasBeenSet() const { return m_environmentVariablesHasBeenSet; } /** *A set of environment variables to make available to builds for this build * project.
*/ inline void SetEnvironmentVariables(const Aws::VectorA set of environment variables to make available to builds for this build * project.
*/ inline void SetEnvironmentVariables(Aws::VectorA set of environment variables to make available to builds for this build * project.
*/ inline ProjectEnvironment& WithEnvironmentVariables(const Aws::VectorA set of environment variables to make available to builds for this build * project.
*/ inline ProjectEnvironment& WithEnvironmentVariables(Aws::VectorA set of environment variables to make available to builds for this build * project.
*/ inline ProjectEnvironment& AddEnvironmentVariables(const EnvironmentVariable& value) { m_environmentVariablesHasBeenSet = true; m_environmentVariables.push_back(value); return *this; } /** *A set of environment variables to make available to builds for this build * project.
*/ inline ProjectEnvironment& AddEnvironmentVariables(EnvironmentVariable&& value) { m_environmentVariablesHasBeenSet = true; m_environmentVariables.push_back(std::move(value)); return *this; } /** *Enables running the Docker daemon inside a Docker container. Set to true only
* if the build project is used to build Docker images. Otherwise, a build that
* attempts to interact with the Docker daemon fails. The default setting is
* false.
You can initialize the Docker daemon during the * install phase of your build by adding one of the following sets of commands to * the install phase of your buildspec file:
If the operating system's base * image is Ubuntu Linux:
- nohup /usr/local/bin/dockerd
* --host=unix:///var/run/docker.sock --host=tcp://0.0.0.0:2375
* --storage-driver=overlay&
- timeout 15 sh -c "until
* docker info; do echo .; sleep 1; done"
If the operating system's
* base image is Alpine Linux and the previous command does not work, add the
* -t argument to timeout:
- nohup
* /usr/local/bin/dockerd --host=unix:///var/run/docker.sock
* --host=tcp://0.0.0.0:2375 --storage-driver=overlay&
-
* timeout -t 15 sh -c "until docker info; do echo .; sleep 1; done"
Enables running the Docker daemon inside a Docker container. Set to true only
* if the build project is used to build Docker images. Otherwise, a build that
* attempts to interact with the Docker daemon fails. The default setting is
* false.
You can initialize the Docker daemon during the * install phase of your build by adding one of the following sets of commands to * the install phase of your buildspec file:
If the operating system's base * image is Ubuntu Linux:
- nohup /usr/local/bin/dockerd
* --host=unix:///var/run/docker.sock --host=tcp://0.0.0.0:2375
* --storage-driver=overlay&
- timeout 15 sh -c "until
* docker info; do echo .; sleep 1; done"
If the operating system's
* base image is Alpine Linux and the previous command does not work, add the
* -t argument to timeout:
- nohup
* /usr/local/bin/dockerd --host=unix:///var/run/docker.sock
* --host=tcp://0.0.0.0:2375 --storage-driver=overlay&
-
* timeout -t 15 sh -c "until docker info; do echo .; sleep 1; done"
Enables running the Docker daemon inside a Docker container. Set to true only
* if the build project is used to build Docker images. Otherwise, a build that
* attempts to interact with the Docker daemon fails. The default setting is
* false.
You can initialize the Docker daemon during the * install phase of your build by adding one of the following sets of commands to * the install phase of your buildspec file:
If the operating system's base * image is Ubuntu Linux:
- nohup /usr/local/bin/dockerd
* --host=unix:///var/run/docker.sock --host=tcp://0.0.0.0:2375
* --storage-driver=overlay&
- timeout 15 sh -c "until
* docker info; do echo .; sleep 1; done"
If the operating system's
* base image is Alpine Linux and the previous command does not work, add the
* -t argument to timeout:
- nohup
* /usr/local/bin/dockerd --host=unix:///var/run/docker.sock
* --host=tcp://0.0.0.0:2375 --storage-driver=overlay&
-
* timeout -t 15 sh -c "until docker info; do echo .; sleep 1; done"
Enables running the Docker daemon inside a Docker container. Set to true only
* if the build project is used to build Docker images. Otherwise, a build that
* attempts to interact with the Docker daemon fails. The default setting is
* false.
You can initialize the Docker daemon during the * install phase of your build by adding one of the following sets of commands to * the install phase of your buildspec file:
If the operating system's base * image is Ubuntu Linux:
- nohup /usr/local/bin/dockerd
* --host=unix:///var/run/docker.sock --host=tcp://0.0.0.0:2375
* --storage-driver=overlay&
- timeout 15 sh -c "until
* docker info; do echo .; sleep 1; done"
If the operating system's
* base image is Alpine Linux and the previous command does not work, add the
* -t argument to timeout:
- nohup
* /usr/local/bin/dockerd --host=unix:///var/run/docker.sock
* --host=tcp://0.0.0.0:2375 --storage-driver=overlay&
-
* timeout -t 15 sh -c "until docker info; do echo .; sleep 1; done"
The certificate to use with this build project.
*/ inline const Aws::String& GetCertificate() const{ return m_certificate; } /** *The certificate to use with this build project.
*/ inline bool CertificateHasBeenSet() const { return m_certificateHasBeenSet; } /** *The certificate to use with this build project.
*/ inline void SetCertificate(const Aws::String& value) { m_certificateHasBeenSet = true; m_certificate = value; } /** *The certificate to use with this build project.
*/ inline void SetCertificate(Aws::String&& value) { m_certificateHasBeenSet = true; m_certificate = std::move(value); } /** *The certificate to use with this build project.
*/ inline void SetCertificate(const char* value) { m_certificateHasBeenSet = true; m_certificate.assign(value); } /** *The certificate to use with this build project.
*/ inline ProjectEnvironment& WithCertificate(const Aws::String& value) { SetCertificate(value); return *this;} /** *The certificate to use with this build project.
*/ inline ProjectEnvironment& WithCertificate(Aws::String&& value) { SetCertificate(std::move(value)); return *this;} /** *The certificate to use with this build project.
*/ inline ProjectEnvironment& WithCertificate(const char* value) { SetCertificate(value); return *this;} /** *The credentials for access to a private registry.
*/ inline const RegistryCredential& GetRegistryCredential() const{ return m_registryCredential; } /** *The credentials for access to a private registry.
*/ inline bool RegistryCredentialHasBeenSet() const { return m_registryCredentialHasBeenSet; } /** *The credentials for access to a private registry.
*/ inline void SetRegistryCredential(const RegistryCredential& value) { m_registryCredentialHasBeenSet = true; m_registryCredential = value; } /** *The credentials for access to a private registry.
*/ inline void SetRegistryCredential(RegistryCredential&& value) { m_registryCredentialHasBeenSet = true; m_registryCredential = std::move(value); } /** *The credentials for access to a private registry.
*/ inline ProjectEnvironment& WithRegistryCredential(const RegistryCredential& value) { SetRegistryCredential(value); return *this;} /** *The credentials for access to a private registry.
*/ inline ProjectEnvironment& WithRegistryCredential(RegistryCredential&& value) { SetRegistryCredential(std::move(value)); return *this;} /** *The type of credentials AWS CodeBuild uses to pull images in your build. * There are two valid values:
CODEBUILD specifies
* that AWS CodeBuild uses its own credentials. This requires that you modify your
* ECR repository policy to trust AWS CodeBuild's service principal.
SERVICE_ROLE specifies that AWS CodeBuild uses your build
* project's service role.
When you use a cross-account or * private registry image, you must use SERVICE_ROLE credentials. When you use an * AWS CodeBuild curated image, you must use CODEBUILD credentials.
*/ inline const ImagePullCredentialsType& GetImagePullCredentialsType() const{ return m_imagePullCredentialsType; } /** *The type of credentials AWS CodeBuild uses to pull images in your build. * There are two valid values:
CODEBUILD specifies
* that AWS CodeBuild uses its own credentials. This requires that you modify your
* ECR repository policy to trust AWS CodeBuild's service principal.
SERVICE_ROLE specifies that AWS CodeBuild uses your build
* project's service role.
When you use a cross-account or * private registry image, you must use SERVICE_ROLE credentials. When you use an * AWS CodeBuild curated image, you must use CODEBUILD credentials.
*/ inline bool ImagePullCredentialsTypeHasBeenSet() const { return m_imagePullCredentialsTypeHasBeenSet; } /** *The type of credentials AWS CodeBuild uses to pull images in your build. * There are two valid values:
CODEBUILD specifies
* that AWS CodeBuild uses its own credentials. This requires that you modify your
* ECR repository policy to trust AWS CodeBuild's service principal.
SERVICE_ROLE specifies that AWS CodeBuild uses your build
* project's service role.
When you use a cross-account or * private registry image, you must use SERVICE_ROLE credentials. When you use an * AWS CodeBuild curated image, you must use CODEBUILD credentials.
*/ inline void SetImagePullCredentialsType(const ImagePullCredentialsType& value) { m_imagePullCredentialsTypeHasBeenSet = true; m_imagePullCredentialsType = value; } /** *The type of credentials AWS CodeBuild uses to pull images in your build. * There are two valid values:
CODEBUILD specifies
* that AWS CodeBuild uses its own credentials. This requires that you modify your
* ECR repository policy to trust AWS CodeBuild's service principal.
SERVICE_ROLE specifies that AWS CodeBuild uses your build
* project's service role.
When you use a cross-account or * private registry image, you must use SERVICE_ROLE credentials. When you use an * AWS CodeBuild curated image, you must use CODEBUILD credentials.
*/ inline void SetImagePullCredentialsType(ImagePullCredentialsType&& value) { m_imagePullCredentialsTypeHasBeenSet = true; m_imagePullCredentialsType = std::move(value); } /** *The type of credentials AWS CodeBuild uses to pull images in your build. * There are two valid values:
CODEBUILD specifies
* that AWS CodeBuild uses its own credentials. This requires that you modify your
* ECR repository policy to trust AWS CodeBuild's service principal.
SERVICE_ROLE specifies that AWS CodeBuild uses your build
* project's service role.
When you use a cross-account or * private registry image, you must use SERVICE_ROLE credentials. When you use an * AWS CodeBuild curated image, you must use CODEBUILD credentials.
*/ inline ProjectEnvironment& WithImagePullCredentialsType(const ImagePullCredentialsType& value) { SetImagePullCredentialsType(value); return *this;} /** *The type of credentials AWS CodeBuild uses to pull images in your build. * There are two valid values:
CODEBUILD specifies
* that AWS CodeBuild uses its own credentials. This requires that you modify your
* ECR repository policy to trust AWS CodeBuild's service principal.
SERVICE_ROLE specifies that AWS CodeBuild uses your build
* project's service role.
When you use a cross-account or * private registry image, you must use SERVICE_ROLE credentials. When you use an * AWS CodeBuild curated image, you must use CODEBUILD credentials.
*/ inline ProjectEnvironment& WithImagePullCredentialsType(ImagePullCredentialsType&& value) { SetImagePullCredentialsType(std::move(value)); return *this;} private: EnvironmentType m_type; bool m_typeHasBeenSet; Aws::String m_image; bool m_imageHasBeenSet; ComputeType m_computeType; bool m_computeTypeHasBeenSet; Aws::Vector