amazonka-codebuild-2.0: Amazon CodeBuild SDK.
Copyright(c) 2013-2023 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellSafe-Inferred
LanguageHaskell2010

Amazonka.CodeBuild.Types.ProjectCache

Description

 
Synopsis

Documentation

data ProjectCache Source #

Information about the cache for the build project.

See: newProjectCache smart constructor.

Constructors

ProjectCache' 

Fields

  • location :: Maybe Text

    Information about the cache location:

    • NO_CACHE or LOCAL: This value is ignored.
    • S3: This is the S3 bucket name/prefix.
  • modes :: Maybe [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.
  • type' :: 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.

Instances

Instances details
FromJSON ProjectCache Source # 
Instance details

Defined in Amazonka.CodeBuild.Types.ProjectCache

ToJSON ProjectCache Source # 
Instance details

Defined in Amazonka.CodeBuild.Types.ProjectCache

Generic ProjectCache Source # 
Instance details

Defined in Amazonka.CodeBuild.Types.ProjectCache

Associated Types

type Rep ProjectCache :: Type -> Type #

Read ProjectCache Source # 
Instance details

Defined in Amazonka.CodeBuild.Types.ProjectCache

Show ProjectCache Source # 
Instance details

Defined in Amazonka.CodeBuild.Types.ProjectCache

NFData ProjectCache Source # 
Instance details

Defined in Amazonka.CodeBuild.Types.ProjectCache

Methods

rnf :: ProjectCache -> () #

Eq ProjectCache Source # 
Instance details

Defined in Amazonka.CodeBuild.Types.ProjectCache

Hashable ProjectCache Source # 
Instance details

Defined in Amazonka.CodeBuild.Types.ProjectCache

type Rep ProjectCache Source # 
Instance details

Defined in Amazonka.CodeBuild.Types.ProjectCache

type Rep ProjectCache = D1 ('MetaData "ProjectCache" "Amazonka.CodeBuild.Types.ProjectCache" "amazonka-codebuild-2.0-3KpZspRk9Ul8Wu4D0cM13Q" 'False) (C1 ('MetaCons "ProjectCache'" 'PrefixI 'True) (S1 ('MetaSel ('Just "location") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe Text)) :*: (S1 ('MetaSel ('Just "modes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe [CacheMode])) :*: S1 ('MetaSel ('Just "type'") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 CacheType))))

newProjectCache Source #

Create a value of ProjectCache with all optional fields omitted.

Use generic-lens or optics to modify other optional fields.

The following record fields are available, with the corresponding lenses provided for backwards compatibility:

$sel:location:ProjectCache', projectCache_location - Information about the cache location:

  • NO_CACHE or LOCAL: This value is ignored.
  • S3: This is the S3 bucket name/prefix.

$sel:modes:ProjectCache', projectCache_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.

$sel:type':ProjectCache', projectCache_type - 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.

projectCache_location :: Lens' ProjectCache (Maybe Text) Source #

Information about the cache location:

  • NO_CACHE or LOCAL: This value is ignored.
  • S3: This is the S3 bucket name/prefix.

projectCache_modes :: Lens' ProjectCache (Maybe [CacheMode]) Source #

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.

projectCache_type :: Lens' ProjectCache CacheType Source #

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.