UNPKG

@aws-amplify/cli-internal

Version:
86 lines 4.5 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.AmplifyMigrationAssessor = void 0; const assessment_1 = require("./assess/assessment"); const amplify_prompts_1 = require("@aws-amplify/amplify-prompts"); const auth_cognito_assessor_1 = require("./assess/auth/auth-cognito.assessor"); const auth_user_pool_groups_assessor_1 = require("./assess/auth/auth-user-pool-groups.assessor"); const s3_assessor_1 = require("./assess/storage/s3.assessor"); const dynamodb_assessor_1 = require("./assess/storage/dynamodb.assessor"); const data_assessor_1 = require("./assess/api/data.assessor"); const rest_api_assessor_1 = require("./assess/api/rest-api.assessor"); const kinesis_assessor_1 = require("./assess/analytics/kinesis.assessor"); const function_assessor_1 = require("./assess/function/function.assessor"); const geo_geofence_collection_assessor_1 = require("./assess/geo/geo-geofence-collection.assessor"); const geo_map_assessor_1 = require("./assess/geo/geo-map.assessor"); const geo_place_index_assessor_1 = require("./assess/geo/geo-place-index.assessor"); const custom_cdk_assessor_1 = require("./assess/custom/custom-cdk.assessor"); class AmplifyMigrationAssessor { constructor(gen1App, logger) { this.gen1App = gen1App; this.logger = logger; } assess() { const discovered = this.gen1App.discover(); const combined = new assessment_1.Assessment(this.gen1App.appName, this.gen1App.envName); for (const resource of discovered) { const assessors = []; this.logger.debug(`Assessing resource: ${resource.category}/${resource.resourceName} (${resource.service})`); switch (resource.key) { case 'auth:Cognito': assessors.push(new auth_cognito_assessor_1.AuthCognitoAssessor(this.gen1App, resource)); break; case 'auth:Cognito-UserPool-Groups': assessors.push(new auth_user_pool_groups_assessor_1.AuthUserPoolGroupsAssessor(this.gen1App, resource)); break; case 'storage:S3': assessors.push(new s3_assessor_1.S3Assessor(this.gen1App, resource)); break; case 'storage:DynamoDB': assessors.push(new dynamodb_assessor_1.DynamoDBAssessor(this.gen1App, resource)); break; case 'api:AppSync': assessors.push(new data_assessor_1.DataAssessor(this.gen1App, resource)); break; case 'api:API Gateway': assessors.push(new rest_api_assessor_1.RestApiAssessor(this.gen1App, resource)); break; case 'analytics:Kinesis': assessors.push(new kinesis_assessor_1.AnalyticsKinesisAssessor(this.gen1App, resource)); break; case 'function:Lambda': assessors.push(new function_assessor_1.FunctionAssessor(this.gen1App, resource)); break; case 'geo:GeofenceCollection': assessors.push(new geo_geofence_collection_assessor_1.GeoFenceCollectionAssessor(this.gen1App, resource)); break; case 'geo:Map': assessors.push(new geo_map_assessor_1.GeoMapAssessor(this.gen1App, resource)); break; case 'geo:PlaceIndex': assessors.push(new geo_place_index_assessor_1.GeoPlaceIndexAssessor(this.gen1App, resource)); break; case 'custom:customCDK': assessors.push(new custom_cdk_assessor_1.CustomCdkAssessor(resource)); break; case 'UNKNOWN': combined.recordResource({ resource, generate: (0, assessment_1.unsupported)('unknown resource type'), refactor: (0, assessment_1.unsupported)('unknown resource type'), }); break; } for (const assessor of assessors) { assessor.record(combined); } } return combined; } run() { const assessment = this.assess(); amplify_prompts_1.printer.info(assessment.render()); } } exports.AmplifyMigrationAssessor = AmplifyMigrationAssessor; //# sourceMappingURL=assess.js.map