filter assessment results by MigationTargetType (#16701) (#16741)

This commit is contained in:
brian-harris
2021-08-12 22:52:04 -07:00
committed by GitHub
parent 0ff54a11df
commit 3b23809846
2 changed files with 14 additions and 4 deletions

View File

@@ -185,12 +185,22 @@ export class MigrationStateModel implements Model, vscode.Disposable {
return finalResult; return finalResult;
} }
public async getDatabaseAssessments(): Promise<ServerAssessement> { public async getDatabaseAssessments(targetType: MigrationTargetType): Promise<ServerAssessement> {
const ownerUri = await azdata.connection.getUriForConnection(this.sourceConnectionId); const ownerUri = await azdata.connection.getUriForConnection(this.sourceConnectionId);
try { try {
this._assessmentApiResponse = (await this.migrationService.getAssessments(ownerUri, this._databaseAssessment))!; const response = (await this.migrationService.getAssessments(ownerUri, this._databaseAssessment))!;
if (response?.assessmentResult) {
response.assessmentResult.items = response.assessmentResult.items?.filter(
issue => issue.appliesToMigrationTargetPlatform === targetType);
response.assessmentResult.databases?.forEach(
database => database.items = database.items?.filter(
issue => issue.appliesToMigrationTargetPlatform === targetType));
}
this._assessmentApiResponse = response;
this._assessmentResults = { this._assessmentResults = {
issues: this._assessmentApiResponse?.assessmentResult?.items ?? [], issues: this._assessmentApiResponse?.assessmentResult?.items || [],
databaseAssessments: this._assessmentApiResponse?.assessmentResult?.databases?.map(d => { databaseAssessments: this._assessmentApiResponse?.assessmentResult?.databases?.map(d => {
return { return {
name: d.name, name: d.name,

View File

@@ -444,7 +444,7 @@ export class SKURecommendationPage extends MigrationWizardPage {
const serverName = (await this.migrationStateModel.getSourceConnectionProfile()).serverName; const serverName = (await this.migrationStateModel.getSourceConnectionProfile()).serverName;
this._igComponent.value = constants.ASSESSMENT_COMPLETED(serverName); this._igComponent.value = constants.ASSESSMENT_COMPLETED(serverName);
try { try {
await this.migrationStateModel.getDatabaseAssessments(); await this.migrationStateModel.getDatabaseAssessments(MigrationTargetType.SQLMI);
this._detailsComponent.value = constants.SKU_RECOMMENDATION_ALL_SUCCESSFUL(this.migrationStateModel._assessmentResults.databaseAssessments.length); this._detailsComponent.value = constants.SKU_RECOMMENDATION_ALL_SUCCESSFUL(this.migrationStateModel._assessmentResults.databaseAssessments.length);
const errors: string[] = []; const errors: string[] = [];