-
Notifications
You must be signed in to change notification settings - Fork 273
fix(amazonq): skip tests locally #5401
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,4 @@ | ||
| { | ||
| "type" : "bugfix", | ||
| "description" : "/transform: skip running tests locally when user chooses to do so" | ||
| } |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -710,7 +710,7 @@ class CodeTransformChatController( | |
| else -> { | ||
| if (result is CodeModernizerJobCompletedResult.ZipUploadFailed && result.failureReason is UploadFailureReason.CREDENTIALS_EXPIRED) { | ||
| return | ||
| } else { | ||
| } else if (CodeModernizerSessionState.getInstance(context.project).currentJobId != null) { | ||
| val downloadResult = artifactHandler.downloadArtifact( | ||
| CodeModernizerSessionState.getInstance(context.project).currentJobId as JobId, | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Before attempting download, make sure that a job ID exists (job may not have started otherwise, so nothing to download) |
||
| TransformationDownloadArtifactType.CLIENT_INSTRUCTIONS | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -27,7 +27,7 @@ import java.nio.file.Path | |
| fun runHilMavenCopyDependency( | ||
| sourceFolder: File, | ||
| destinationDir: File, | ||
| buildlogBuilder: StringBuilder, | ||
| logBuilder: StringBuilder, | ||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Got a detekt error elsewhere because a line was too long, so just shortened this name everywhere in this file |
||
| logger: Logger, | ||
| project: Project, | ||
| ): MavenCopyCommandsResult { | ||
|
|
@@ -39,13 +39,13 @@ fun runHilMavenCopyDependency( | |
|
|
||
| // run copy dependencies | ||
| val copyDependenciesRunnable = | ||
| runMavenCopyDependencies(sourceFolder, buildlogBuilder, mvnSettings, transformMvnRunner, destinationDir.toPath(), logger) | ||
| runMavenCopyDependencies(sourceFolder, logBuilder, mvnSettings, transformMvnRunner, destinationDir.toPath(), logger) | ||
| copyDependenciesRunnable.await() | ||
| buildlogBuilder.appendLine(copyDependenciesRunnable.getOutput()) | ||
| logBuilder.appendLine(copyDependenciesRunnable.getOutput()) | ||
| if (copyDependenciesRunnable.isComplete()) { | ||
| val successMsg = "IntelliJ IDEA bundled Maven copy-dependencies executed successfully" | ||
| logger.info { successMsg } | ||
| buildlogBuilder.appendLine(successMsg) | ||
| logBuilder.appendLine(successMsg) | ||
| } else if (copyDependenciesRunnable.isTerminated()) { | ||
| return MavenCopyCommandsResult.Cancelled | ||
| } | ||
|
|
@@ -57,7 +57,7 @@ fun runHilMavenCopyDependency( | |
| return MavenCopyCommandsResult.Success(destinationDir) | ||
| } | ||
|
|
||
| fun runMavenCopyCommands(sourceFolder: File, buildlogBuilder: StringBuilder, logger: Logger, project: Project): MavenCopyCommandsResult { | ||
| fun runMavenCopyCommands(sourceFolder: File, logBuilder: StringBuilder, logger: Logger, project: Project, shouldSkipTests: Boolean): MavenCopyCommandsResult { | ||
| val currentTimestamp = System.currentTimeMillis() | ||
| val destinationDir = Files.createTempDirectory("transformation_dependencies_temp_$currentTimestamp") | ||
| val telemetry = CodeTransformTelemetryManager.getInstance(project) | ||
|
|
@@ -79,13 +79,13 @@ fun runMavenCopyCommands(sourceFolder: File, buildlogBuilder: StringBuilder, log | |
|
|
||
| // run copy dependencies | ||
| val copyDependenciesRunnable = | ||
| runMavenCopyDependencies(sourceFolder, buildlogBuilder, mvnSettings, transformMvnRunner, destinationDir, logger) | ||
| runMavenCopyDependencies(sourceFolder, logBuilder, mvnSettings, transformMvnRunner, destinationDir, logger) | ||
| copyDependenciesRunnable.await() | ||
| buildlogBuilder.appendLine(copyDependenciesRunnable.getOutput()) | ||
| logBuilder.appendLine(copyDependenciesRunnable.getOutput()) | ||
| if (copyDependenciesRunnable.isComplete()) { | ||
| val successMsg = "IntelliJ IDEA bundled Maven copy-dependencies executed successfully" | ||
| logger.info { successMsg } | ||
| buildlogBuilder.appendLine(successMsg) | ||
| logBuilder.appendLine(successMsg) | ||
| } else if (copyDependenciesRunnable.isTerminated()) { | ||
| telemetryLocalBuildResult = Result.Cancelled | ||
| return MavenCopyCommandsResult.Cancelled | ||
|
|
@@ -94,13 +94,13 @@ fun runMavenCopyCommands(sourceFolder: File, buildlogBuilder: StringBuilder, log | |
| } | ||
|
|
||
| // Run clean | ||
| val cleanRunnable = runMavenClean(sourceFolder, buildlogBuilder, mvnSettings, transformMvnRunner, logger, destinationDir) | ||
| val cleanRunnable = runMavenClean(sourceFolder, logBuilder, mvnSettings, transformMvnRunner, logger, destinationDir) | ||
| cleanRunnable.await() | ||
| buildlogBuilder.appendLine(cleanRunnable.getOutput()) | ||
| logBuilder.appendLine(cleanRunnable.getOutput()) | ||
| if (cleanRunnable.isComplete()) { | ||
| val successMsg = "IntelliJ bundled Maven clean executed successfully" | ||
| logger.info { successMsg } | ||
| buildlogBuilder.appendLine(successMsg) | ||
| logBuilder.appendLine(successMsg) | ||
| } else if (cleanRunnable.isTerminated()) { | ||
| telemetryLocalBuildResult = Result.Cancelled | ||
| return MavenCopyCommandsResult.Cancelled | ||
|
|
@@ -112,13 +112,13 @@ fun runMavenCopyCommands(sourceFolder: File, buildlogBuilder: StringBuilder, log | |
| } | ||
|
|
||
| // Run install | ||
| val installRunnable = runMavenInstall(sourceFolder, buildlogBuilder, mvnSettings, transformMvnRunner, logger, destinationDir) | ||
| val installRunnable = runMavenInstall(sourceFolder, logBuilder, mvnSettings, transformMvnRunner, logger, destinationDir, shouldSkipTests) | ||
| installRunnable.await() | ||
| buildlogBuilder.appendLine(installRunnable.getOutput()) | ||
| logBuilder.appendLine(installRunnable.getOutput()) | ||
| if (installRunnable.isComplete()) { | ||
| val successMsg = "IntelliJ bundled Maven install executed successfully" | ||
| logger.info { successMsg } | ||
| buildlogBuilder.appendLine(successMsg) | ||
| logBuilder.appendLine(successMsg) | ||
| } else if (installRunnable.isTerminated()) { | ||
| telemetryLocalBuildResult = Result.Cancelled | ||
| return MavenCopyCommandsResult.Cancelled | ||
|
|
@@ -212,18 +212,24 @@ private fun runMavenClean( | |
|
|
||
| private fun runMavenInstall( | ||
| sourceFolder: File, | ||
| buildlogBuilder: StringBuilder, | ||
| logBuilder: StringBuilder, | ||
| mvnSettings: MavenRunnerSettings, | ||
| transformMavenRunner: TransformMavenRunner, | ||
| logger: Logger, | ||
| destinationDir: Path, | ||
| shouldSkipTests: Boolean, | ||
| ): TransformRunnable { | ||
| buildlogBuilder.appendLine("Command Run: IntelliJ IDEA bundled Maven install") | ||
| logBuilder.appendLine("Command Run: IntelliJ IDEA bundled Maven install") | ||
| val flags = if (shouldSkipTests) { | ||
| listOf("-Dmaven.repo.local=$destinationDir", "install", "-DskipTests") | ||
| } else { | ||
| listOf("-Dmaven.repo.local=$destinationDir", "install") | ||
| } | ||
| val installParams = MavenRunnerParameters( | ||
| false, | ||
| sourceFolder.absolutePath, | ||
| null, | ||
| listOf("-Dmaven.repo.local=$destinationDir", "install"), | ||
| flags, | ||
| emptyList<String>(), | ||
| null | ||
| ) | ||
|
|
@@ -234,20 +240,20 @@ private fun runMavenInstall( | |
| } catch (t: Throwable) { | ||
| logger.error(t) { "Maven Install: Unexpected error when executing bundled Maven install" } | ||
| installTransformRunnable.setExitCode(Integer.MIN_VALUE) // to stop looking for the exitCode | ||
| buildlogBuilder.appendLine("IntelliJ bundled Maven install failed: ${t.message}") | ||
| logBuilder.appendLine("IntelliJ bundled Maven install failed: ${t.message}") | ||
| } | ||
| } | ||
| return installTransformRunnable | ||
| } | ||
|
|
||
| private fun runMavenDependencyUpdatesReport( | ||
| sourceFolder: File, | ||
| buildlogBuilder: StringBuilder, | ||
| logBuilder: StringBuilder, | ||
| mvnSettings: MavenRunnerSettings, | ||
| transformMavenRunner: TransformMavenRunner, | ||
| logger: Logger, | ||
| ): TransformRunnable { | ||
| buildlogBuilder.appendLine("Command Run: IntelliJ IDEA bundled Maven dependency updates report") | ||
| logBuilder.appendLine("Command Run: IntelliJ IDEA bundled Maven dependency updates report") | ||
|
|
||
| val dependencyUpdatesReportCommandList = listOf( | ||
| "versions:dependency-updates-aggregate-report", | ||
|
|
@@ -270,25 +276,25 @@ private fun runMavenDependencyUpdatesReport( | |
| } catch (t: Throwable) { | ||
| logger.error(t) { "Maven dependency report: Unexpected error when executing bundled Maven dependency updates report" } | ||
| dependencyUpdatesReportRunnable.setExitCode(Integer.MIN_VALUE) // to stop looking for the exitCode | ||
| buildlogBuilder.appendLine("IntelliJ bundled Maven dependency updates report failed: ${t.message}") | ||
| logBuilder.appendLine("IntelliJ bundled Maven dependency updates report failed: ${t.message}") | ||
| } | ||
| } | ||
| return dependencyUpdatesReportRunnable | ||
| } | ||
|
|
||
| fun runDependencyReportCommands(sourceFolder: File, buildlogBuilder: StringBuilder, logger: Logger, project: Project): MavenDependencyReportCommandsResult { | ||
| fun runDependencyReportCommands(sourceFolder: File, logBuilder: StringBuilder, logger: Logger, project: Project): MavenDependencyReportCommandsResult { | ||
| logger.info { "Executing IntelliJ bundled Maven" } | ||
|
|
||
| val transformMvnRunner = TransformMavenRunner(project) | ||
| val mvnSettings = MavenRunner.getInstance(project).settings.clone() // clone required to avoid editing user settings | ||
|
|
||
| val runnable = runMavenDependencyUpdatesReport(sourceFolder, buildlogBuilder, mvnSettings, transformMvnRunner, logger) | ||
| val runnable = runMavenDependencyUpdatesReport(sourceFolder, logBuilder, mvnSettings, transformMvnRunner, logger) | ||
| runnable.await() | ||
| buildlogBuilder.appendLine(runnable.getOutput()) | ||
| logBuilder.appendLine(runnable.getOutput()) | ||
| if (runnable.isComplete()) { | ||
| val successMsg = "IntelliJ bundled Maven dependency report executed successfully" | ||
| logger.info { successMsg } | ||
| buildlogBuilder.appendLine(successMsg) | ||
| logBuilder.appendLine(successMsg) | ||
| } else if (runnable.isTerminated()) { | ||
| return MavenDependencyReportCommandsResult.Cancelled | ||
| } else { | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just switch the order of these 2 options so that "skip tests" is the default