Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion src/main/kotlin/nmcp/NmcpAggregation.kt
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ package nmcp
import org.gradle.api.Project
import org.gradle.api.artifacts.Configuration
import org.gradle.api.provider.Property
import java.time.Duration
import javax.inject.Inject

abstract class NmcpAggregation @Inject constructor(
Expand Down Expand Up @@ -53,7 +54,7 @@ abstract class NmcpAggregation @Inject constructor(
*
* Default: 600 (10 minutes).
*/
abstract val verificationTimeout: Property<Int>
abstract val verificationTimeout: Property<Duration>

fun project(path: String) {
project.dependencies.add(configuration.name, project.dependencies.project(mapOf("path" to path)))
Expand Down
10 changes: 7 additions & 3 deletions src/main/kotlin/nmcp/NmcpPublishTask.kt
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,12 @@ import org.gradle.api.file.RegularFileProperty
import org.gradle.api.provider.Property
import org.gradle.api.tasks.*
import org.gradle.work.DisableCachingByDefault
import java.time.Duration
import kotlin.time.Duration.Companion.minutes
import kotlin.time.Duration.Companion.seconds
import kotlin.time.TimeSource.Monotonic.markNow
import kotlin.time.toJavaDuration
import kotlin.time.toKotlinDuration


@DisableCachingByDefault
Expand All @@ -38,7 +42,7 @@ abstract class NmcpPublishTask : DefaultTask() {

@get:Input
@get:Optional
abstract val verificationTimeout: Property<Int>
abstract val verificationTimeout: Property<Duration>

@get:Input
@get:Optional
Expand Down Expand Up @@ -98,10 +102,10 @@ abstract class NmcpPublishTask : DefaultTask() {

if (verifyStatus.orElse(true).get()) {
logger.lifecycle("Nmcp: verifying deployment status...")
val timeout = verificationTimeout.orElse(600).get().seconds
val timeout = verificationTimeout.orElse(10.minutes.toJavaDuration()).get()
val mark = markNow()
while (true) {
check (mark.elapsedNow() < timeout) {
check (mark.elapsedNow() < timeout.toKotlinDuration()) {
"Nmcp: timeout while verifying deployment status."
}
when (val status = verifyStatus(
Expand Down
3 changes: 2 additions & 1 deletion src/main/kotlin/nmcp/NmcpSpec.kt
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package nmcp

import org.gradle.api.provider.Property
import java.time.Duration

abstract class NmcpSpec {
/**
Expand Down Expand Up @@ -47,5 +48,5 @@ abstract class NmcpSpec {
*
* Default: 600 (10 minutes).
*/
abstract val verificationTimeout: Property<Int>
abstract val verificationTimeout: Property<Duration>
}