put_portfolio_preferences

put_portfolio_preferences(**kwargs)

Saves the specified migration and modernization preferences.

See also: AWS API Documentation

Request Syntax

response = client.put_portfolio_preferences(
    applicationMode='ALL'|'KNOWN'|'UNKNOWN',
    applicationPreferences={
        'managementPreference': {
            'awsManagedResources': {
                'targetDestination': [
                    'None specified'|'AWS Elastic BeanStalk'|'AWS Fargate',
                ]
            },
            'noPreference': {
                'targetDestination': [
                    'None specified'|'AWS Elastic BeanStalk'|'AWS Fargate'|'Amazon Elastic Cloud Compute (EC2)'|'Amazon Elastic Container Service (ECS)'|'Amazon Elastic Kubernetes Service (EKS)',
                ]
            },
            'selfManageResources': {
                'targetDestination': [
                    'None specified'|'Amazon Elastic Cloud Compute (EC2)'|'Amazon Elastic Container Service (ECS)'|'Amazon Elastic Kubernetes Service (EKS)',
                ]
            }
        }
    },
    databasePreferences={
        'databaseManagementPreference': 'AWS-managed'|'Self-manage'|'No preference',
        'databaseMigrationPreference': {
            'heterogeneous': {
                'targetDatabaseEngine': [
                    'None specified'|'Amazon Aurora'|'AWS PostgreSQL'|'MySQL'|'Microsoft SQL Server'|'Oracle Database'|'MariaDB'|'SAP'|'Db2 LUW'|'MongoDB',
                ]
            },
            'homogeneous': {
                'targetDatabaseEngine': [
                    'None specified',
                ]
            },
            'noPreference': {
                'targetDatabaseEngine': [
                    'None specified'|'Amazon Aurora'|'AWS PostgreSQL'|'MySQL'|'Microsoft SQL Server'|'Oracle Database'|'MariaDB'|'SAP'|'Db2 LUW'|'MongoDB',
                ]
            }
        }
    },
    prioritizeBusinessGoals={
        'businessGoals': {
            'licenseCostReduction': 123,
            'modernizeInfrastructureWithCloudNativeTechnologies': 123,
            'reduceOperationalOverheadWithManagedServices': 123,
            'speedOfMigration': 123
        }
    }
)
Parameters
  • applicationMode (string) -- The classification for application component types.
  • applicationPreferences (dict) --

    The transformation preferences for non-database applications.

    • managementPreference (dict) --

      Application preferences that you specify to prefer managed environment.

      Note

      This is a Tagged Union structure. Only one of the following top level keys can be set: awsManagedResources, noPreference, selfManageResources.

      • awsManagedResources (dict) --

        Indicates interest in solutions that are managed by AWS.

        • targetDestination (list) -- [REQUIRED]

          The choice of application destination that you specify.

          • (string) --
      • noPreference (dict) --

        No specific preference.

        • targetDestination (list) -- [REQUIRED]

          The choice of application destination that you specify.

          • (string) --
      • selfManageResources (dict) --

        Indicates interest in managing your own resources on AWS.

        • targetDestination (list) -- [REQUIRED]

          Self-managed resources target destination.

          • (string) --
  • databasePreferences (dict) --

    The transformation preferences for database applications.

    • databaseManagementPreference (string) --

      Specifies whether you're interested in self-managed databases or databases managed by AWS.

    • databaseMigrationPreference (dict) --

      Specifies your preferred migration path.

      Note

      This is a Tagged Union structure. Only one of the following top level keys can be set: heterogeneous, homogeneous, noPreference.

      • heterogeneous (dict) --

        Indicates whether you are interested in moving from one type of database to another. For example, from SQL Server to Amazon Aurora MySQL-Compatible Edition.

        • targetDatabaseEngine (list) -- [REQUIRED]

          The target database engine for heterogeneous database migration preference.

          • (string) --
      • homogeneous (dict) --

        Indicates whether you are interested in moving to the same type of database into AWS. For example, from SQL Server in your environment to SQL Server on AWS.

        • targetDatabaseEngine (list) --

          The target database engine for homogeneous database migration preferences.

          • (string) --
      • noPreference (dict) --

        Indicated that you do not prefer heterogeneous or homogeneous.

        • targetDatabaseEngine (list) -- [REQUIRED]

          The target database engine for database migration preference that you specify.

          • (string) --
  • prioritizeBusinessGoals (dict) --

    The rank of the business goals based on priority.

    • businessGoals (dict) --

      Rank of business goals based on priority.

      • licenseCostReduction (integer) --

        Business goal to reduce license costs.

      • modernizeInfrastructureWithCloudNativeTechnologies (integer) --

        Business goal to modernize infrastructure by moving to cloud native technologies.

      • reduceOperationalOverheadWithManagedServices (integer) --

        Business goal to reduce the operational overhead on the team by moving into managed services.

      • speedOfMigration (integer) --

        Business goal to achieve migration at a fast pace.

Return type

dict

Returns

Response Syntax

{}

Response Structure

  • (dict) --

Exceptions

  • MigrationHubStrategyRecommendations.Client.exceptions.AccessDeniedException
  • MigrationHubStrategyRecommendations.Client.exceptions.ThrottlingException
  • MigrationHubStrategyRecommendations.Client.exceptions.ValidationException
  • MigrationHubStrategyRecommendations.Client.exceptions.ConflictException
  • MigrationHubStrategyRecommendations.Client.exceptions.InternalServerException