in src/com/intellij/idea/plugin/hybris/tools/ccv2/CCv2Service.kt [417:457]
fun deployBuild(
project: Project,
subscription: CCv2Subscription,
environment: CCv2EnvironmentDto,
build: CCv2BuildDto,
mode: CCv2DeploymentDatabaseUpdateModeEnum,
strategy: CCv2DeploymentStrategyEnum
) {
coroutineScope.launch {
withBackgroundProgress(project, "Deploying CCv2 Build - ${build.code}...") {
project.messageBus.syncPublisher(TOPIC_BUILDS).onBuildDeploymentStarted(subscription, build)
val ccv2Token = getCCv2Token(subscription)
if (ccv2Token == null) {
project.messageBus.syncPublisher(TOPIC_BUILDS).onBuildDeploymentRequested(subscription, build)
return@withBackgroundProgress
}
try {
CCv2Api.getInstance()
.deployBuild(ccv2Token, subscription, environment, build, mode, strategy)
.also {
Notifications.create(
NotificationType.INFORMATION,
"CCv2: Build deployment has been requested.",
"""
Code: ${build.code}<br>
Subscription: $subscription<br>
""".trimIndent()
)
.hideAfter(10)
.notify(project)
}
} catch (e: SocketTimeoutException) {
notifyOnTimeout(subscription)
} catch (e: RuntimeException) {
notifyOnException(subscription, e)
}
}
}
}