pub struct CreateDomainFluentBuilder { /* private fields */ }
Expand description
Fluent builder constructing a request to CreateDomain
.
Creates a Domain
. A domain consists of an associated Amazon Elastic File System volume, a list of authorized users, and a variety of security, application, policy, and Amazon Virtual Private Cloud (VPC) configurations. Users within a domain can share notebook files and other artifacts with each other.
EFS storage
When a domain is created, an EFS volume is created for use by all of the users within the domain. Each user receives a private home directory within the EFS volume for notebooks, Git repositories, and data files.
SageMaker AI uses the Amazon Web Services Key Management Service (Amazon Web Services KMS) to encrypt the EFS volume attached to the domain with an Amazon Web Services managed key by default. For more control, you can specify a customer managed key. For more information, see Protect Data at Rest Using Encryption.
VPC configuration
All traffic between the domain and the Amazon EFS volume is through the specified VPC and subnets. For other traffic, you can specify the AppNetworkAccessType
parameter. AppNetworkAccessType
corresponds to the network access type that you choose when you onboard to the domain. The following options are available:
-
PublicInternetOnly
- Non-EFS traffic goes through a VPC managed by Amazon SageMaker AI, which allows internet access. This is the default value. -
VpcOnly
- All traffic is through the specified VPC and subnets. Internet access is disabled by default. To allow internet access, you must specify a NAT gateway.When internet access is disabled, you won't be able to run a Amazon SageMaker AI Studio notebook or to train or host models unless your VPC has an interface endpoint to the SageMaker AI API and runtime or a NAT gateway and your security groups allow outbound connections.
NFS traffic over TCP on port 2049 needs to be allowed in both inbound and outbound rules in order to launch a Amazon SageMaker AI Studio app successfully.
For more information, see Connect Amazon SageMaker AI Studio Notebooks to Resources in a VPC.
Implementations§
Source§impl CreateDomainFluentBuilder
impl CreateDomainFluentBuilder
Sourcepub fn as_input(&self) -> &CreateDomainInputBuilder
pub fn as_input(&self) -> &CreateDomainInputBuilder
Access the CreateDomain as a reference.
Sourcepub async fn send(
self,
) -> Result<CreateDomainOutput, SdkError<CreateDomainError, HttpResponse>>
pub async fn send( self, ) -> Result<CreateDomainOutput, SdkError<CreateDomainError, HttpResponse>>
Sends the request and returns the response.
If an error occurs, an SdkError
will be returned with additional details that
can be matched against.
By default, any retryable failures will be retried twice. Retry behavior is configurable with the RetryConfig, which can be set when configuring the client.
Sourcepub fn customize(
self,
) -> CustomizableOperation<CreateDomainOutput, CreateDomainError, Self>
pub fn customize( self, ) -> CustomizableOperation<CreateDomainOutput, CreateDomainError, Self>
Consumes this builder, creating a customizable operation that can be modified before being sent.
Sourcepub fn domain_name(self, input: impl Into<String>) -> Self
pub fn domain_name(self, input: impl Into<String>) -> Self
A name for the domain.
Sourcepub fn set_domain_name(self, input: Option<String>) -> Self
pub fn set_domain_name(self, input: Option<String>) -> Self
A name for the domain.
Sourcepub fn get_domain_name(&self) -> &Option<String>
pub fn get_domain_name(&self) -> &Option<String>
A name for the domain.
Sourcepub fn auth_mode(self, input: AuthMode) -> Self
pub fn auth_mode(self, input: AuthMode) -> Self
The mode of authentication that members use to access the domain.
Sourcepub fn set_auth_mode(self, input: Option<AuthMode>) -> Self
pub fn set_auth_mode(self, input: Option<AuthMode>) -> Self
The mode of authentication that members use to access the domain.
Sourcepub fn get_auth_mode(&self) -> &Option<AuthMode>
pub fn get_auth_mode(&self) -> &Option<AuthMode>
The mode of authentication that members use to access the domain.
Sourcepub fn default_user_settings(self, input: UserSettings) -> Self
pub fn default_user_settings(self, input: UserSettings) -> Self
The default settings to use to create a user profile when UserSettings
isn't specified in the call to the CreateUserProfile
API.
SecurityGroups
is aggregated when specified in both calls. For all other settings in UserSettings
, the values specified in CreateUserProfile
take precedence over those specified in CreateDomain
.
Sourcepub fn set_default_user_settings(self, input: Option<UserSettings>) -> Self
pub fn set_default_user_settings(self, input: Option<UserSettings>) -> Self
The default settings to use to create a user profile when UserSettings
isn't specified in the call to the CreateUserProfile
API.
SecurityGroups
is aggregated when specified in both calls. For all other settings in UserSettings
, the values specified in CreateUserProfile
take precedence over those specified in CreateDomain
.
Sourcepub fn get_default_user_settings(&self) -> &Option<UserSettings>
pub fn get_default_user_settings(&self) -> &Option<UserSettings>
The default settings to use to create a user profile when UserSettings
isn't specified in the call to the CreateUserProfile
API.
SecurityGroups
is aggregated when specified in both calls. For all other settings in UserSettings
, the values specified in CreateUserProfile
take precedence over those specified in CreateDomain
.
Sourcepub fn domain_settings(self, input: DomainSettings) -> Self
pub fn domain_settings(self, input: DomainSettings) -> Self
A collection of Domain
settings.
Sourcepub fn set_domain_settings(self, input: Option<DomainSettings>) -> Self
pub fn set_domain_settings(self, input: Option<DomainSettings>) -> Self
A collection of Domain
settings.
Sourcepub fn get_domain_settings(&self) -> &Option<DomainSettings>
pub fn get_domain_settings(&self) -> &Option<DomainSettings>
A collection of Domain
settings.
Sourcepub fn subnet_ids(self, input: impl Into<String>) -> Self
pub fn subnet_ids(self, input: impl Into<String>) -> Self
Appends an item to SubnetIds
.
To override the contents of this collection use set_subnet_ids
.
The VPC subnets that the domain uses for communication.
Sourcepub fn set_subnet_ids(self, input: Option<Vec<String>>) -> Self
pub fn set_subnet_ids(self, input: Option<Vec<String>>) -> Self
The VPC subnets that the domain uses for communication.
Sourcepub fn get_subnet_ids(&self) -> &Option<Vec<String>>
pub fn get_subnet_ids(&self) -> &Option<Vec<String>>
The VPC subnets that the domain uses for communication.
Sourcepub fn vpc_id(self, input: impl Into<String>) -> Self
pub fn vpc_id(self, input: impl Into<String>) -> Self
The ID of the Amazon Virtual Private Cloud (VPC) that the domain uses for communication.
Sourcepub fn set_vpc_id(self, input: Option<String>) -> Self
pub fn set_vpc_id(self, input: Option<String>) -> Self
The ID of the Amazon Virtual Private Cloud (VPC) that the domain uses for communication.
Sourcepub fn get_vpc_id(&self) -> &Option<String>
pub fn get_vpc_id(&self) -> &Option<String>
The ID of the Amazon Virtual Private Cloud (VPC) that the domain uses for communication.
Appends an item to Tags
.
To override the contents of this collection use set_tags
.
Tags to associated with the Domain. Each tag consists of a key and an optional value. Tag keys must be unique per resource. Tags are searchable using the Search
API.
Tags that you specify for the Domain are also added to all Apps that the Domain launches.
Tags to associated with the Domain. Each tag consists of a key and an optional value. Tag keys must be unique per resource. Tags are searchable using the Search
API.
Tags that you specify for the Domain are also added to all Apps that the Domain launches.
Tags to associated with the Domain. Each tag consists of a key and an optional value. Tag keys must be unique per resource. Tags are searchable using the Search
API.
Tags that you specify for the Domain are also added to all Apps that the Domain launches.
Sourcepub fn app_network_access_type(self, input: AppNetworkAccessType) -> Self
pub fn app_network_access_type(self, input: AppNetworkAccessType) -> Self
Specifies the VPC used for non-EFS traffic. The default value is PublicInternetOnly
.
-
PublicInternetOnly
- Non-EFS traffic is through a VPC managed by Amazon SageMaker AI, which allows direct internet access -
VpcOnly
- All traffic is through the specified VPC and subnets
Sourcepub fn set_app_network_access_type(
self,
input: Option<AppNetworkAccessType>,
) -> Self
pub fn set_app_network_access_type( self, input: Option<AppNetworkAccessType>, ) -> Self
Specifies the VPC used for non-EFS traffic. The default value is PublicInternetOnly
.
-
PublicInternetOnly
- Non-EFS traffic is through a VPC managed by Amazon SageMaker AI, which allows direct internet access -
VpcOnly
- All traffic is through the specified VPC and subnets
Sourcepub fn get_app_network_access_type(&self) -> &Option<AppNetworkAccessType>
pub fn get_app_network_access_type(&self) -> &Option<AppNetworkAccessType>
Specifies the VPC used for non-EFS traffic. The default value is PublicInternetOnly
.
-
PublicInternetOnly
- Non-EFS traffic is through a VPC managed by Amazon SageMaker AI, which allows direct internet access -
VpcOnly
- All traffic is through the specified VPC and subnets
Sourcepub fn home_efs_file_system_kms_key_id(self, input: impl Into<String>) -> Self
👎Deprecated: This property is deprecated, use KmsKeyId instead.
pub fn home_efs_file_system_kms_key_id(self, input: impl Into<String>) -> Self
Use KmsKeyId
.
Sourcepub fn set_home_efs_file_system_kms_key_id(self, input: Option<String>) -> Self
👎Deprecated: This property is deprecated, use KmsKeyId instead.
pub fn set_home_efs_file_system_kms_key_id(self, input: Option<String>) -> Self
Use KmsKeyId
.
Sourcepub fn get_home_efs_file_system_kms_key_id(&self) -> &Option<String>
👎Deprecated: This property is deprecated, use KmsKeyId instead.
pub fn get_home_efs_file_system_kms_key_id(&self) -> &Option<String>
Use KmsKeyId
.
Sourcepub fn kms_key_id(self, input: impl Into<String>) -> Self
pub fn kms_key_id(self, input: impl Into<String>) -> Self
SageMaker AI uses Amazon Web Services KMS to encrypt EFS and EBS volumes attached to the domain with an Amazon Web Services managed key by default. For more control, specify a customer managed key.
Sourcepub fn set_kms_key_id(self, input: Option<String>) -> Self
pub fn set_kms_key_id(self, input: Option<String>) -> Self
SageMaker AI uses Amazon Web Services KMS to encrypt EFS and EBS volumes attached to the domain with an Amazon Web Services managed key by default. For more control, specify a customer managed key.
Sourcepub fn get_kms_key_id(&self) -> &Option<String>
pub fn get_kms_key_id(&self) -> &Option<String>
SageMaker AI uses Amazon Web Services KMS to encrypt EFS and EBS volumes attached to the domain with an Amazon Web Services managed key by default. For more control, specify a customer managed key.
Sourcepub fn app_security_group_management(
self,
input: AppSecurityGroupManagement,
) -> Self
pub fn app_security_group_management( self, input: AppSecurityGroupManagement, ) -> Self
The entity that creates and manages the required security groups for inter-app communication in VPCOnly
mode. Required when CreateDomain.AppNetworkAccessType
is VPCOnly
and DomainSettings.RStudioServerProDomainSettings.DomainExecutionRoleArn
is provided. If setting up the domain for use with RStudio, this value must be set to Service
.
Sourcepub fn set_app_security_group_management(
self,
input: Option<AppSecurityGroupManagement>,
) -> Self
pub fn set_app_security_group_management( self, input: Option<AppSecurityGroupManagement>, ) -> Self
The entity that creates and manages the required security groups for inter-app communication in VPCOnly
mode. Required when CreateDomain.AppNetworkAccessType
is VPCOnly
and DomainSettings.RStudioServerProDomainSettings.DomainExecutionRoleArn
is provided. If setting up the domain for use with RStudio, this value must be set to Service
.
Sourcepub fn get_app_security_group_management(
&self,
) -> &Option<AppSecurityGroupManagement>
pub fn get_app_security_group_management( &self, ) -> &Option<AppSecurityGroupManagement>
The entity that creates and manages the required security groups for inter-app communication in VPCOnly
mode. Required when CreateDomain.AppNetworkAccessType
is VPCOnly
and DomainSettings.RStudioServerProDomainSettings.DomainExecutionRoleArn
is provided. If setting up the domain for use with RStudio, this value must be set to Service
.
Sourcepub fn tag_propagation(self, input: TagPropagation) -> Self
pub fn tag_propagation(self, input: TagPropagation) -> Self
Indicates whether custom tag propagation is supported for the domain. Defaults to DISABLED
.
Sourcepub fn set_tag_propagation(self, input: Option<TagPropagation>) -> Self
pub fn set_tag_propagation(self, input: Option<TagPropagation>) -> Self
Indicates whether custom tag propagation is supported for the domain. Defaults to DISABLED
.
Sourcepub fn get_tag_propagation(&self) -> &Option<TagPropagation>
pub fn get_tag_propagation(&self) -> &Option<TagPropagation>
Indicates whether custom tag propagation is supported for the domain. Defaults to DISABLED
.
Sourcepub fn default_space_settings(self, input: DefaultSpaceSettings) -> Self
pub fn default_space_settings(self, input: DefaultSpaceSettings) -> Self
The default settings for shared spaces that users create in the domain.
Sourcepub fn set_default_space_settings(
self,
input: Option<DefaultSpaceSettings>,
) -> Self
pub fn set_default_space_settings( self, input: Option<DefaultSpaceSettings>, ) -> Self
The default settings for shared spaces that users create in the domain.
Sourcepub fn get_default_space_settings(&self) -> &Option<DefaultSpaceSettings>
pub fn get_default_space_settings(&self) -> &Option<DefaultSpaceSettings>
The default settings for shared spaces that users create in the domain.
Trait Implementations§
Source§impl Clone for CreateDomainFluentBuilder
impl Clone for CreateDomainFluentBuilder
Source§fn clone(&self) -> CreateDomainFluentBuilder
fn clone(&self) -> CreateDomainFluentBuilder
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreAuto Trait Implementations§
impl Freeze for CreateDomainFluentBuilder
impl !RefUnwindSafe for CreateDomainFluentBuilder
impl Send for CreateDomainFluentBuilder
impl Sync for CreateDomainFluentBuilder
impl Unpin for CreateDomainFluentBuilder
impl !UnwindSafe for CreateDomainFluentBuilder
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);