Struct aws_sdk_codebuild::types::builders::ProjectCacheBuilder
source · #[non_exhaustive]pub struct ProjectCacheBuilder { /* private fields */ }
Expand description
A builder for ProjectCache
.
Implementations§
source§impl ProjectCacheBuilder
impl ProjectCacheBuilder
sourcepub fn type(self, input: CacheType) -> Self
pub fn type(self, input: CacheType) -> Self
The type of cache used by the build project. Valid values include:
-
NO_CACHE
: The build project does not use any cache. -
S3
: The build project reads and writes from and to S3. -
LOCAL
: The build project stores a cache locally on a build host that is only available to that build host.
sourcepub fn set_type(self, input: Option<CacheType>) -> Self
pub fn set_type(self, input: Option<CacheType>) -> Self
The type of cache used by the build project. Valid values include:
-
NO_CACHE
: The build project does not use any cache. -
S3
: The build project reads and writes from and to S3. -
LOCAL
: The build project stores a cache locally on a build host that is only available to that build host.
sourcepub fn get_type(&self) -> &Option<CacheType>
pub fn get_type(&self) -> &Option<CacheType>
The type of cache used by the build project. Valid values include:
-
NO_CACHE
: The build project does not use any cache. -
S3
: The build project reads and writes from and to S3. -
LOCAL
: The build project stores a cache locally on a build host that is only available to that build host.
sourcepub fn location(self, input: impl Into<String>) -> Self
pub fn location(self, input: impl Into<String>) -> Self
Information about the cache location:
-
NO_CACHE
orLOCAL
: This value is ignored. -
S3
: This is the S3 bucket name/prefix.
sourcepub fn set_location(self, input: Option<String>) -> Self
pub fn set_location(self, input: Option<String>) -> Self
Information about the cache location:
-
NO_CACHE
orLOCAL
: This value is ignored. -
S3
: This is the S3 bucket name/prefix.
sourcepub fn get_location(&self) -> &Option<String>
pub fn get_location(&self) -> &Option<String>
Information about the cache location:
-
NO_CACHE
orLOCAL
: This value is ignored. -
S3
: This is the S3 bucket name/prefix.
sourcepub fn modes(self, input: CacheMode) -> Self
pub fn modes(self, input: CacheMode) -> Self
Appends an item to modes
.
To override the contents of this collection use set_modes
.
An array of strings that specify the local cache modes. You can use one or more local cache modes at the same time. This is only used for LOCAL
cache types.
Possible values are:
- LOCAL_SOURCE_CACHE
-
Caches Git metadata for primary and secondary sources. After the cache is created, subsequent builds pull only the change between commits. This mode is a good choice for projects with a clean working directory and a source that is a large Git repository. If you choose this option and your project does not use a Git repository (GitHub, GitHub Enterprise, or Bitbucket), the option is ignored.
- LOCAL_DOCKER_LAYER_CACHE
-
Caches existing Docker layers. This mode is a good choice for projects that build or pull large Docker images. It can prevent the performance issues caused by pulling large Docker images down from the network.
-
You can use a Docker layer cache in the Linux environment only.
-
The
privileged
flag must be set so that your project has the required Docker permissions. -
You should consider the security implications before you use a Docker layer cache.
-
- LOCAL_CUSTOM_CACHE
-
Caches directories you specify in the buildspec file. This mode is a good choice if your build scenario is not suited to one of the other three local cache modes. If you use a custom cache:
-
Only directories can be specified for caching. You cannot specify individual files.
-
Symlinks are used to reference cached directories.
-
Cached directories are linked to your build before it downloads its project sources. Cached items are overridden if a source item has the same name. Directories are specified using cache paths in the buildspec file.
-
sourcepub fn set_modes(self, input: Option<Vec<CacheMode>>) -> Self
pub fn set_modes(self, input: Option<Vec<CacheMode>>) -> Self
An array of strings that specify the local cache modes. You can use one or more local cache modes at the same time. This is only used for LOCAL
cache types.
Possible values are:
- LOCAL_SOURCE_CACHE
-
Caches Git metadata for primary and secondary sources. After the cache is created, subsequent builds pull only the change between commits. This mode is a good choice for projects with a clean working directory and a source that is a large Git repository. If you choose this option and your project does not use a Git repository (GitHub, GitHub Enterprise, or Bitbucket), the option is ignored.
- LOCAL_DOCKER_LAYER_CACHE
-
Caches existing Docker layers. This mode is a good choice for projects that build or pull large Docker images. It can prevent the performance issues caused by pulling large Docker images down from the network.
-
You can use a Docker layer cache in the Linux environment only.
-
The
privileged
flag must be set so that your project has the required Docker permissions. -
You should consider the security implications before you use a Docker layer cache.
-
- LOCAL_CUSTOM_CACHE
-
Caches directories you specify in the buildspec file. This mode is a good choice if your build scenario is not suited to one of the other three local cache modes. If you use a custom cache:
-
Only directories can be specified for caching. You cannot specify individual files.
-
Symlinks are used to reference cached directories.
-
Cached directories are linked to your build before it downloads its project sources. Cached items are overridden if a source item has the same name. Directories are specified using cache paths in the buildspec file.
-
sourcepub fn get_modes(&self) -> &Option<Vec<CacheMode>>
pub fn get_modes(&self) -> &Option<Vec<CacheMode>>
An array of strings that specify the local cache modes. You can use one or more local cache modes at the same time. This is only used for LOCAL
cache types.
Possible values are:
- LOCAL_SOURCE_CACHE
-
Caches Git metadata for primary and secondary sources. After the cache is created, subsequent builds pull only the change between commits. This mode is a good choice for projects with a clean working directory and a source that is a large Git repository. If you choose this option and your project does not use a Git repository (GitHub, GitHub Enterprise, or Bitbucket), the option is ignored.
- LOCAL_DOCKER_LAYER_CACHE
-
Caches existing Docker layers. This mode is a good choice for projects that build or pull large Docker images. It can prevent the performance issues caused by pulling large Docker images down from the network.
-
You can use a Docker layer cache in the Linux environment only.
-
The
privileged
flag must be set so that your project has the required Docker permissions. -
You should consider the security implications before you use a Docker layer cache.
-
- LOCAL_CUSTOM_CACHE
-
Caches directories you specify in the buildspec file. This mode is a good choice if your build scenario is not suited to one of the other three local cache modes. If you use a custom cache:
-
Only directories can be specified for caching. You cannot specify individual files.
-
Symlinks are used to reference cached directories.
-
Cached directories are linked to your build before it downloads its project sources. Cached items are overridden if a source item has the same name. Directories are specified using cache paths in the buildspec file.
-
sourcepub fn build(self) -> Result<ProjectCache, BuildError>
pub fn build(self) -> Result<ProjectCache, BuildError>
Consumes the builder and constructs a ProjectCache
.
This method will fail if any of the following fields are not set:
Trait Implementations§
source§impl Clone for ProjectCacheBuilder
impl Clone for ProjectCacheBuilder
source§fn clone(&self) -> ProjectCacheBuilder
fn clone(&self) -> ProjectCacheBuilder
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for ProjectCacheBuilder
impl Debug for ProjectCacheBuilder
source§impl Default for ProjectCacheBuilder
impl Default for ProjectCacheBuilder
source§fn default() -> ProjectCacheBuilder
fn default() -> ProjectCacheBuilder
source§impl PartialEq for ProjectCacheBuilder
impl PartialEq for ProjectCacheBuilder
source§fn eq(&self, other: &ProjectCacheBuilder) -> bool
fn eq(&self, other: &ProjectCacheBuilder) -> bool
self
and other
values to be equal, and is used
by ==
.