createMlflowApp method
Creates an MLflow Tracking Server using a general purpose Amazon S3 bucket as the artifact store.
May throw ResourceLimitExceeded.
Parameter artifactStoreUri :
The S3 URI for a general purpose bucket to use as the MLflow App artifact
store.
Parameter name :
A string identifying the MLflow app name. This string is not part of the
tracking server ARN.
Parameter roleArn :
The Amazon Resource Name (ARN) for an IAM role in your account that the
MLflow App uses to access the artifact store in Amazon S3. The role should
have the AmazonS3FullAccess permission.
Parameter accountDefaultStatus :
Indicates whether this MLflow app is the default for the entire account.
Parameter defaultDomainIdList :
List of SageMaker domain IDs for which this MLflow App is used as the
default.
Parameter modelRegistrationMode :
Whether to enable or disable automatic registration of new MLflow models
to the SageMaker Model Registry. To enable automatic model registration,
set this value to AutoModelRegistrationEnabled. To disable
automatic model registration, set this value to
AutoModelRegistrationDisabled. If not specified,
AutomaticModelRegistration defaults to
AutoModelRegistrationDisabled.
Parameter tags :
Tags consisting of key-value pairs used to manage metadata for the MLflow
App.
Parameter weeklyMaintenanceWindowStart :
The day and time of the week in Coordinated Universal Time (UTC) 24-hour
standard time that weekly maintenance updates are scheduled. For example:
TUE:03:30.
Implementation
Future<CreateMlflowAppResponse> createMlflowApp({
required String artifactStoreUri,
required String name,
required String roleArn,
AccountDefaultStatus? accountDefaultStatus,
List<String>? defaultDomainIdList,
ModelRegistrationMode? modelRegistrationMode,
List<Tag>? tags,
String? weeklyMaintenanceWindowStart,
}) async {
final headers = <String, String>{
'Content-Type': 'application/x-amz-json-1.1',
'X-Amz-Target': 'SageMaker.CreateMlflowApp'
};
final jsonResponse = await _protocol.send(
method: 'POST',
requestUri: '/',
exceptionFnMap: _exceptionFns,
// TODO queryParams
headers: headers,
payload: {
'ArtifactStoreUri': artifactStoreUri,
'Name': name,
'RoleArn': roleArn,
if (accountDefaultStatus != null)
'AccountDefaultStatus': accountDefaultStatus.value,
if (defaultDomainIdList != null)
'DefaultDomainIdList': defaultDomainIdList,
if (modelRegistrationMode != null)
'ModelRegistrationMode': modelRegistrationMode.value,
if (tags != null) 'Tags': tags,
if (weeklyMaintenanceWindowStart != null)
'WeeklyMaintenanceWindowStart': weeklyMaintenanceWindowStart,
},
);
return CreateMlflowAppResponse.fromJson(jsonResponse.body);
}