/* * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). * You may not use this file except in compliance with the License. * A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing * permissions and limitations under the License. */ /* * Do not modify this file. This file is generated from the sagemaker-2017-07-24.normal.json service model. */ using System; using System.Collections.Generic; using System.Xml.Serialization; using System.Text; using System.IO; using System.Net; using Amazon.Runtime; using Amazon.Runtime.Internal; namespace Amazon.SageMaker.Model { /// /// Container for the parameters to the UpdateNotebookInstance operation. /// Updates a notebook instance. NotebookInstance updates include upgrading or downgrading /// the ML compute instance used for your notebook instance to accommodate changes in /// your workload requirements. /// public partial class UpdateNotebookInstanceRequest : AmazonSageMakerRequest { private List _acceleratorTypes = new List(); private List _additionalCodeRepositories = new List(); private string _defaultCodeRepository; private bool? _disassociateAcceleratorTypes; private bool? _disassociateAdditionalCodeRepositories; private bool? _disassociateDefaultCodeRepository; private bool? _disassociateLifecycleConfig; private InstanceMetadataServiceConfiguration _instanceMetadataServiceConfiguration; private InstanceType _instanceType; private string _lifecycleConfigName; private string _notebookInstanceName; private string _roleArn; private RootAccess _rootAccess; private int? _volumeSizeInGB; /// /// Gets and sets the property AcceleratorTypes. /// /// A list of the Elastic Inference (EI) instance types to associate with this notebook /// instance. Currently only one EI instance type can be associated with a notebook instance. /// For more information, see Using /// Elastic Inference in Amazon SageMaker. /// /// public List AcceleratorTypes { get { return this._acceleratorTypes; } set { this._acceleratorTypes = value; } } // Check to see if AcceleratorTypes property is set internal bool IsSetAcceleratorTypes() { return this._acceleratorTypes != null && this._acceleratorTypes.Count > 0; } /// /// Gets and sets the property AdditionalCodeRepositories. /// /// An array of up to three Git repositories to associate with the notebook instance. /// These can be either the names of Git repositories stored as resources in your account, /// or the URL of Git repositories in Amazon /// Web Services CodeCommit or in any other Git repository. These repositories are /// cloned at the same level as the default repository of your notebook instance. For /// more information, see Associating /// Git Repositories with SageMaker Notebook Instances. /// /// [AWSProperty(Max=3)] public List AdditionalCodeRepositories { get { return this._additionalCodeRepositories; } set { this._additionalCodeRepositories = value; } } // Check to see if AdditionalCodeRepositories property is set internal bool IsSetAdditionalCodeRepositories() { return this._additionalCodeRepositories != null && this._additionalCodeRepositories.Count > 0; } /// /// Gets and sets the property DefaultCodeRepository. /// /// The Git repository to associate with the notebook instance as its default code repository. /// This can be either the name of a Git repository stored as a resource in your account, /// or the URL of a Git repository in Amazon /// Web Services CodeCommit or in any other Git repository. When you open a notebook /// instance, it opens in the directory that contains this repository. For more information, /// see Associating /// Git Repositories with SageMaker Notebook Instances. /// /// [AWSProperty(Min=1, Max=1024)] public string DefaultCodeRepository { get { return this._defaultCodeRepository; } set { this._defaultCodeRepository = value; } } // Check to see if DefaultCodeRepository property is set internal bool IsSetDefaultCodeRepository() { return this._defaultCodeRepository != null; } /// /// Gets and sets the property DisassociateAcceleratorTypes. /// /// A list of the Elastic Inference (EI) instance types to remove from this notebook instance. /// This operation is idempotent. If you specify an accelerator type that is not associated /// with the notebook instance when you call this method, it does not throw an error. /// /// public bool DisassociateAcceleratorTypes { get { return this._disassociateAcceleratorTypes.GetValueOrDefault(); } set { this._disassociateAcceleratorTypes = value; } } // Check to see if DisassociateAcceleratorTypes property is set internal bool IsSetDisassociateAcceleratorTypes() { return this._disassociateAcceleratorTypes.HasValue; } /// /// Gets and sets the property DisassociateAdditionalCodeRepositories. /// /// A list of names or URLs of the default Git repositories to remove from this notebook /// instance. This operation is idempotent. If you specify a Git repository that is not /// associated with the notebook instance when you call this method, it does not throw /// an error. /// /// public bool DisassociateAdditionalCodeRepositories { get { return this._disassociateAdditionalCodeRepositories.GetValueOrDefault(); } set { this._disassociateAdditionalCodeRepositories = value; } } // Check to see if DisassociateAdditionalCodeRepositories property is set internal bool IsSetDisassociateAdditionalCodeRepositories() { return this._disassociateAdditionalCodeRepositories.HasValue; } /// /// Gets and sets the property DisassociateDefaultCodeRepository. /// /// The name or URL of the default Git repository to remove from this notebook instance. /// This operation is idempotent. If you specify a Git repository that is not associated /// with the notebook instance when you call this method, it does not throw an error. /// /// public bool DisassociateDefaultCodeRepository { get { return this._disassociateDefaultCodeRepository.GetValueOrDefault(); } set { this._disassociateDefaultCodeRepository = value; } } // Check to see if DisassociateDefaultCodeRepository property is set internal bool IsSetDisassociateDefaultCodeRepository() { return this._disassociateDefaultCodeRepository.HasValue; } /// /// Gets and sets the property DisassociateLifecycleConfig. /// /// Set to true to remove the notebook instance lifecycle configuration currently /// associated with the notebook instance. This operation is idempotent. If you specify /// a lifecycle configuration that is not associated with the notebook instance when you /// call this method, it does not throw an error. /// /// public bool DisassociateLifecycleConfig { get { return this._disassociateLifecycleConfig.GetValueOrDefault(); } set { this._disassociateLifecycleConfig = value; } } // Check to see if DisassociateLifecycleConfig property is set internal bool IsSetDisassociateLifecycleConfig() { return this._disassociateLifecycleConfig.HasValue; } /// /// Gets and sets the property InstanceMetadataServiceConfiguration. /// /// Information on the IMDS configuration of the notebook instance /// /// public InstanceMetadataServiceConfiguration InstanceMetadataServiceConfiguration { get { return this._instanceMetadataServiceConfiguration; } set { this._instanceMetadataServiceConfiguration = value; } } // Check to see if InstanceMetadataServiceConfiguration property is set internal bool IsSetInstanceMetadataServiceConfiguration() { return this._instanceMetadataServiceConfiguration != null; } /// /// Gets and sets the property InstanceType. /// /// The Amazon ML compute instance type. /// /// public InstanceType InstanceType { get { return this._instanceType; } set { this._instanceType = value; } } // Check to see if InstanceType property is set internal bool IsSetInstanceType() { return this._instanceType != null; } /// /// Gets and sets the property LifecycleConfigName. /// /// The name of a lifecycle configuration to associate with the notebook instance. For /// information about lifestyle configurations, see Step /// 2.1: (Optional) Customize a Notebook Instance. /// /// [AWSProperty(Max=63)] public string LifecycleConfigName { get { return this._lifecycleConfigName; } set { this._lifecycleConfigName = value; } } // Check to see if LifecycleConfigName property is set internal bool IsSetLifecycleConfigName() { return this._lifecycleConfigName != null; } /// /// Gets and sets the property NotebookInstanceName. /// /// The name of the notebook instance to update. /// /// [AWSProperty(Required=true, Max=63)] public string NotebookInstanceName { get { return this._notebookInstanceName; } set { this._notebookInstanceName = value; } } // Check to see if NotebookInstanceName property is set internal bool IsSetNotebookInstanceName() { return this._notebookInstanceName != null; } /// /// Gets and sets the property RoleArn. /// /// The Amazon Resource Name (ARN) of the IAM role that SageMaker can assume to access /// the notebook instance. For more information, see SageMaker /// Roles. /// /// /// /// To be able to pass this role to SageMaker, the caller of this API must have the iam:PassRole /// permission. /// /// /// [AWSProperty(Min=20, Max=2048)] public string RoleArn { get { return this._roleArn; } set { this._roleArn = value; } } // Check to see if RoleArn property is set internal bool IsSetRoleArn() { return this._roleArn != null; } /// /// Gets and sets the property RootAccess. /// /// Whether root access is enabled or disabled for users of the notebook instance. The /// default value is Enabled. /// /// /// /// If you set this to Disabled, users don't have root access on the notebook /// instance, but lifecycle configuration scripts still run with root permissions. /// /// /// public RootAccess RootAccess { get { return this._rootAccess; } set { this._rootAccess = value; } } // Check to see if RootAccess property is set internal bool IsSetRootAccess() { return this._rootAccess != null; } /// /// Gets and sets the property VolumeSizeInGB. /// /// The size, in GB, of the ML storage volume to attach to the notebook instance. The /// default value is 5 GB. ML storage volumes are encrypted, so SageMaker can't determine /// the amount of available free space on the volume. Because of this, you can increase /// the volume size when you update a notebook instance, but you can't decrease the volume /// size. If you want to decrease the size of the ML storage volume in use, create a new /// notebook instance with the desired size. /// /// [AWSProperty(Min=5, Max=16384)] public int VolumeSizeInGB { get { return this._volumeSizeInGB.GetValueOrDefault(); } set { this._volumeSizeInGB = value; } } // Check to see if VolumeSizeInGB property is set internal bool IsSetVolumeSizeInGB() { return this._volumeSizeInGB.HasValue; } } }