#[non_exhaustive]pub struct ProjectArtifacts {
pub type: ArtifactsType,
pub location: Option<String>,
pub path: Option<String>,
pub namespace_type: Option<ArtifactNamespace>,
pub name: Option<String>,
pub packaging: Option<ArtifactPackaging>,
pub override_artifact_name: Option<bool>,
pub encryption_disabled: Option<bool>,
pub artifact_identifier: Option<String>,
pub bucket_owner_access: Option<BucketOwnerAccess>,
}
Expand description
Information about the build output artifacts for the build project.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.type: ArtifactsType
The type of build output artifact. Valid values include:
-
CODEPIPELINE
: The build project has build output generated through CodePipeline.The
CODEPIPELINE
type is not supported forsecondaryArtifacts
. -
NO_ARTIFACTS
: The build project does not produce any build output. -
S3
: The build project stores build output in Amazon S3.
location: Option<String>
Information about the build output artifact location:
-
If
type
is set toCODEPIPELINE
, CodePipeline ignores this value if specified. This is because CodePipeline manages its build output locations instead of CodeBuild. -
If
type
is set toNO_ARTIFACTS
, this value is ignored if specified, because no build output is produced. -
If
type
is set toS3
, this is the name of the output bucket.
path: Option<String>
Along with namespaceType
and name
, the pattern that CodeBuild uses to name and store the output artifact:
-
If
type
is set toCODEPIPELINE
, CodePipeline ignores this value if specified. This is because CodePipeline manages its build output names instead of CodeBuild. -
If
type
is set toNO_ARTIFACTS
, this value is ignored if specified, because no build output is produced. -
If
type
is set toS3
, this is the path to the output artifact. Ifpath
is not specified,path
is not used.
For example, if path
is set to MyArtifacts
, namespaceType
is set to NONE
, and name
is set to MyArtifact.zip
, the output artifact is stored in the output bucket at MyArtifacts/MyArtifact.zip
.
namespace_type: Option<ArtifactNamespace>
Along with path
and name
, the pattern that CodeBuild uses to determine the name and location to store the output artifact:
-
If
type
is set toCODEPIPELINE
, CodePipeline ignores this value if specified. This is because CodePipeline manages its build output names instead of CodeBuild. -
If
type
is set toNO_ARTIFACTS
, this value is ignored if specified, because no build output is produced. -
If
type
is set toS3
, valid values include:-
BUILD_ID
: Include the build ID in the location of the build output artifact. -
NONE
: Do not include the build ID. This is the default ifnamespaceType
is not specified.
-
For example, if path
is set to MyArtifacts
, namespaceType
is set to BUILD_ID
, and name
is set to MyArtifact.zip
, the output artifact is stored in MyArtifacts/
.
name: Option<String>
Along with path
and namespaceType
, the pattern that CodeBuild uses to name and store the output artifact:
-
If
type
is set toCODEPIPELINE
, CodePipeline ignores this value if specified. This is because CodePipeline manages its build output names instead of CodeBuild. -
If
type
is set toNO_ARTIFACTS
, this value is ignored if specified, because no build output is produced. -
If
type
is set toS3
, this is the name of the output artifact object. If you set the name to be a forward slash ("/"), the artifact is stored in the root of the output bucket.
For example:
-
If
path
is set toMyArtifacts
,namespaceType
is set toBUILD_ID
, andname
is set toMyArtifact.zip
, then the output artifact is stored inMyArtifacts/
./MyArtifact.zip -
If
path
is empty,namespaceType
is set toNONE
, andname
is set to "/
", the output artifact is stored in the root of the output bucket. -
If
path
is set toMyArtifacts
,namespaceType
is set toBUILD_ID
, andname
is set to "/
", the output artifact is stored inMyArtifacts/
.
packaging: Option<ArtifactPackaging>
The type of build output artifact to create:
-
If
type
is set toCODEPIPELINE
, CodePipeline ignores this value if specified. This is because CodePipeline manages its build output artifacts instead of CodeBuild. -
If
type
is set toNO_ARTIFACTS
, this value is ignored if specified, because no build output is produced. -
If
type
is set toS3
, valid values include:-
NONE
: CodeBuild creates in the output bucket a folder that contains the build output. This is the default ifpackaging
is not specified. -
ZIP
: CodeBuild creates in the output bucket a ZIP file that contains the build output.
-
override_artifact_name: Option<bool>
If this flag is set, a name specified in the buildspec file overrides the artifact name. The name specified in a buildspec file is calculated at build time and uses the Shell Command Language. For example, you can append a date and time to your artifact name so that it is always unique.
encryption_disabled: Option<bool>
Set to true if you do not want your output artifacts encrypted. This option is valid only if your artifacts type is Amazon S3. If this is set with another artifacts type, an invalidInputException is thrown.
artifact_identifier: Option<String>
An identifier for this artifact definition.
bucket_owner_access: Option<BucketOwnerAccess>
Specifies the bucket owner's access for objects that another account uploads to their Amazon S3 bucket. By default, only the account that uploads the objects to the bucket has access to these objects. This property allows you to give the bucket owner access to these objects.
To use this property, your CodeBuild service role must have the s3:PutBucketAcl
permission. This permission allows CodeBuild to modify the access control list for the bucket.
This property can be one of the following values:
- NONE
-
The bucket owner does not have access to the objects. This is the default.
- READ_ONLY
-
The bucket owner has read-only access to the objects. The uploading account retains ownership of the objects.
- FULL
-
The bucket owner has full access to the objects. Object ownership is determined by the following criteria:
-
If the bucket is configured with the Bucket owner preferred setting, the bucket owner owns the objects. The uploading account will have object access as specified by the bucket's policy.
-
Otherwise, the uploading account retains ownership of the objects.
For more information about Amazon S3 object ownership, see Controlling ownership of uploaded objects using S3 Object Ownership in the Amazon Simple Storage Service User Guide.
-
Implementations§
Source§impl ProjectArtifacts
impl ProjectArtifacts
Sourcepub fn type(&self) -> &ArtifactsType
pub fn type(&self) -> &ArtifactsType
The type of build output artifact. Valid values include:
-
CODEPIPELINE
: The build project has build output generated through CodePipeline.The
CODEPIPELINE
type is not supported forsecondaryArtifacts
. -
NO_ARTIFACTS
: The build project does not produce any build output. -
S3
: The build project stores build output in Amazon S3.
Sourcepub fn location(&self) -> Option<&str>
pub fn location(&self) -> Option<&str>
Information about the build output artifact location:
-
If
type
is set toCODEPIPELINE
, CodePipeline ignores this value if specified. This is because CodePipeline manages its build output locations instead of CodeBuild. -
If
type
is set toNO_ARTIFACTS
, this value is ignored if specified, because no build output is produced. -
If
type
is set toS3
, this is the name of the output bucket.
Sourcepub fn path(&self) -> Option<&str>
pub fn path(&self) -> Option<&str>
Along with namespaceType
and name
, the pattern that CodeBuild uses to name and store the output artifact:
-
If
type
is set toCODEPIPELINE
, CodePipeline ignores this value if specified. This is because CodePipeline manages its build output names instead of CodeBuild. -
If
type
is set toNO_ARTIFACTS
, this value is ignored if specified, because no build output is produced. -
If
type
is set toS3
, this is the path to the output artifact. Ifpath
is not specified,path
is not used.
For example, if path
is set to MyArtifacts
, namespaceType
is set to NONE
, and name
is set to MyArtifact.zip
, the output artifact is stored in the output bucket at MyArtifacts/MyArtifact.zip
.
Sourcepub fn namespace_type(&self) -> Option<&ArtifactNamespace>
pub fn namespace_type(&self) -> Option<&ArtifactNamespace>
Along with path
and name
, the pattern that CodeBuild uses to determine the name and location to store the output artifact:
-
If
type
is set toCODEPIPELINE
, CodePipeline ignores this value if specified. This is because CodePipeline manages its build output names instead of CodeBuild. -
If
type
is set toNO_ARTIFACTS
, this value is ignored if specified, because no build output is produced. -
If
type
is set toS3
, valid values include:-
BUILD_ID
: Include the build ID in the location of the build output artifact. -
NONE
: Do not include the build ID. This is the default ifnamespaceType
is not specified.
-
For example, if path
is set to MyArtifacts
, namespaceType
is set to BUILD_ID
, and name
is set to MyArtifact.zip
, the output artifact is stored in MyArtifacts/
.
Sourcepub fn name(&self) -> Option<&str>
pub fn name(&self) -> Option<&str>
Along with path
and namespaceType
, the pattern that CodeBuild uses to name and store the output artifact:
-
If
type
is set toCODEPIPELINE
, CodePipeline ignores this value if specified. This is because CodePipeline manages its build output names instead of CodeBuild. -
If
type
is set toNO_ARTIFACTS
, this value is ignored if specified, because no build output is produced. -
If
type
is set toS3
, this is the name of the output artifact object. If you set the name to be a forward slash ("/"), the artifact is stored in the root of the output bucket.
For example:
-
If
path
is set toMyArtifacts
,namespaceType
is set toBUILD_ID
, andname
is set toMyArtifact.zip
, then the output artifact is stored inMyArtifacts/
./MyArtifact.zip -
If
path
is empty,namespaceType
is set toNONE
, andname
is set to "/
", the output artifact is stored in the root of the output bucket. -
If
path
is set toMyArtifacts
,namespaceType
is set toBUILD_ID
, andname
is set to "/
", the output artifact is stored inMyArtifacts/
.
Sourcepub fn packaging(&self) -> Option<&ArtifactPackaging>
pub fn packaging(&self) -> Option<&ArtifactPackaging>
The type of build output artifact to create:
-
If
type
is set toCODEPIPELINE
, CodePipeline ignores this value if specified. This is because CodePipeline manages its build output artifacts instead of CodeBuild. -
If
type
is set toNO_ARTIFACTS
, this value is ignored if specified, because no build output is produced. -
If
type
is set toS3
, valid values include:-
NONE
: CodeBuild creates in the output bucket a folder that contains the build output. This is the default ifpackaging
is not specified. -
ZIP
: CodeBuild creates in the output bucket a ZIP file that contains the build output.
-
Sourcepub fn override_artifact_name(&self) -> Option<bool>
pub fn override_artifact_name(&self) -> Option<bool>
If this flag is set, a name specified in the buildspec file overrides the artifact name. The name specified in a buildspec file is calculated at build time and uses the Shell Command Language. For example, you can append a date and time to your artifact name so that it is always unique.
Sourcepub fn encryption_disabled(&self) -> Option<bool>
pub fn encryption_disabled(&self) -> Option<bool>
Set to true if you do not want your output artifacts encrypted. This option is valid only if your artifacts type is Amazon S3. If this is set with another artifacts type, an invalidInputException is thrown.
Sourcepub fn artifact_identifier(&self) -> Option<&str>
pub fn artifact_identifier(&self) -> Option<&str>
An identifier for this artifact definition.
Sourcepub fn bucket_owner_access(&self) -> Option<&BucketOwnerAccess>
pub fn bucket_owner_access(&self) -> Option<&BucketOwnerAccess>
Specifies the bucket owner's access for objects that another account uploads to their Amazon S3 bucket. By default, only the account that uploads the objects to the bucket has access to these objects. This property allows you to give the bucket owner access to these objects.
To use this property, your CodeBuild service role must have the s3:PutBucketAcl
permission. This permission allows CodeBuild to modify the access control list for the bucket.
This property can be one of the following values:
- NONE
-
The bucket owner does not have access to the objects. This is the default.
- READ_ONLY
-
The bucket owner has read-only access to the objects. The uploading account retains ownership of the objects.
- FULL
-
The bucket owner has full access to the objects. Object ownership is determined by the following criteria:
-
If the bucket is configured with the Bucket owner preferred setting, the bucket owner owns the objects. The uploading account will have object access as specified by the bucket's policy.
-
Otherwise, the uploading account retains ownership of the objects.
For more information about Amazon S3 object ownership, see Controlling ownership of uploaded objects using S3 Object Ownership in the Amazon Simple Storage Service User Guide.
-
Source§impl ProjectArtifacts
impl ProjectArtifacts
Sourcepub fn builder() -> ProjectArtifactsBuilder
pub fn builder() -> ProjectArtifactsBuilder
Creates a new builder-style object to manufacture ProjectArtifacts
.
Trait Implementations§
Source§impl Clone for ProjectArtifacts
impl Clone for ProjectArtifacts
Source§fn clone(&self) -> ProjectArtifacts
fn clone(&self) -> ProjectArtifacts
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for ProjectArtifacts
impl Debug for ProjectArtifacts
Source§impl PartialEq for ProjectArtifacts
impl PartialEq for ProjectArtifacts
impl StructuralPartialEq for ProjectArtifacts
Auto Trait Implementations§
impl Freeze for ProjectArtifacts
impl RefUnwindSafe for ProjectArtifacts
impl Send for ProjectArtifacts
impl Sync for ProjectArtifacts
impl Unpin for ProjectArtifacts
impl UnwindSafe for ProjectArtifacts
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Paint for Twhere
T: ?Sized,
impl<T> Paint for Twhere
T: ?Sized,
Source§fn fg(&self, value: Color) -> Painted<&T>
fn fg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self
with the foreground set to
value
.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like red()
and
green()
, which have the same functionality but are
pithier.
§Example
Set foreground color to white using fg()
:
use yansi::{Paint, Color};
painted.fg(Color::White);
Set foreground color to white using white()
.
use yansi::Paint;
painted.white();
Source§fn bright_black(&self) -> Painted<&T>
fn bright_black(&self) -> Painted<&T>
Source§fn bright_red(&self) -> Painted<&T>
fn bright_red(&self) -> Painted<&T>
Source§fn bright_green(&self) -> Painted<&T>
fn bright_green(&self) -> Painted<&T>
Source§fn bright_yellow(&self) -> Painted<&T>
fn bright_yellow(&self) -> Painted<&T>
Source§fn bright_blue(&self) -> Painted<&T>
fn bright_blue(&self) -> Painted<&T>
Source§fn bright_magenta(&self) -> Painted<&T>
fn bright_magenta(&self) -> Painted<&T>
Source§fn bright_cyan(&self) -> Painted<&T>
fn bright_cyan(&self) -> Painted<&T>
Source§fn bright_white(&self) -> Painted<&T>
fn bright_white(&self) -> Painted<&T>
Source§fn bg(&self, value: Color) -> Painted<&T>
fn bg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self
with the background set to
value
.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like on_red()
and
on_green()
, which have the same functionality but
are pithier.
§Example
Set background color to red using fg()
:
use yansi::{Paint, Color};
painted.bg(Color::Red);
Set background color to red using on_red()
.
use yansi::Paint;
painted.on_red();
Source§fn on_primary(&self) -> Painted<&T>
fn on_primary(&self) -> Painted<&T>
Source§fn on_magenta(&self) -> Painted<&T>
fn on_magenta(&self) -> Painted<&T>
Source§fn on_bright_black(&self) -> Painted<&T>
fn on_bright_black(&self) -> Painted<&T>
Source§fn on_bright_red(&self) -> Painted<&T>
fn on_bright_red(&self) -> Painted<&T>
Source§fn on_bright_green(&self) -> Painted<&T>
fn on_bright_green(&self) -> Painted<&T>
Source§fn on_bright_yellow(&self) -> Painted<&T>
fn on_bright_yellow(&self) -> Painted<&T>
Source§fn on_bright_blue(&self) -> Painted<&T>
fn on_bright_blue(&self) -> Painted<&T>
Source§fn on_bright_magenta(&self) -> Painted<&T>
fn on_bright_magenta(&self) -> Painted<&T>
Source§fn on_bright_cyan(&self) -> Painted<&T>
fn on_bright_cyan(&self) -> Painted<&T>
Source§fn on_bright_white(&self) -> Painted<&T>
fn on_bright_white(&self) -> Painted<&T>
Source§fn attr(&self, value: Attribute) -> Painted<&T>
fn attr(&self, value: Attribute) -> Painted<&T>
Enables the styling Attribute
value
.
This method should be used rarely. Instead, prefer to use
attribute-specific builder methods like bold()
and
underline()
, which have the same functionality
but are pithier.
§Example
Make text bold using attr()
:
use yansi::{Paint, Attribute};
painted.attr(Attribute::Bold);
Make text bold using using bold()
.
use yansi::Paint;
painted.bold();
Source§fn rapid_blink(&self) -> Painted<&T>
fn rapid_blink(&self) -> Painted<&T>
Source§fn quirk(&self, value: Quirk) -> Painted<&T>
fn quirk(&self, value: Quirk) -> Painted<&T>
Enables the yansi
Quirk
value
.
This method should be used rarely. Instead, prefer to use quirk-specific
builder methods like mask()
and
wrap()
, which have the same functionality but are
pithier.
§Example
Enable wrapping using .quirk()
:
use yansi::{Paint, Quirk};
painted.quirk(Quirk::Wrap);
Enable wrapping using wrap()
.
use yansi::Paint;
painted.wrap();
Source§fn clear(&self) -> Painted<&T>
👎Deprecated since 1.0.1: renamed to resetting()
due to conflicts with Vec::clear()
.
The clear()
method will be removed in a future release.
fn clear(&self) -> Painted<&T>
resetting()
due to conflicts with Vec::clear()
.
The clear()
method will be removed in a future release.Source§fn whenever(&self, value: Condition) -> Painted<&T>
fn whenever(&self, value: Condition) -> Painted<&T>
Conditionally enable styling based on whether the Condition
value
applies. Replaces any previous condition.
See the crate level docs for more details.
§Example
Enable styling painted
only when both stdout
and stderr
are TTYs:
use yansi::{Paint, Condition};
painted.red().on_yellow().whenever(Condition::STDOUTERR_ARE_TTY);