diff --git a/allure-report-plugin/src/main/kotlin/io/qameta/allure/gradle/report/AllureReportExtension.kt b/allure-report-plugin/src/main/kotlin/io/qameta/allure/gradle/report/AllureReportExtension.kt index 700d987..1b27c2e 100644 --- a/allure-report-plugin/src/main/kotlin/io/qameta/allure/gradle/report/AllureReportExtension.kt +++ b/allure-report-plugin/src/main/kotlin/io/qameta/allure/gradle/report/AllureReportExtension.kt @@ -48,4 +48,14 @@ open class AllureReportExtension @Inject constructor( fun dependsOnTests() { dependsOnTests.set(true) } + + /** + * By default, Allure generates multi-file reports. + * To generate single-file reports, set this property to true. + */ + val singleFile: Property = objects.property().convention( + project.provider { + false + } + ) } diff --git a/allure-report-plugin/src/main/kotlin/io/qameta/allure/gradle/report/tasks/AllureReport.kt b/allure-report-plugin/src/main/kotlin/io/qameta/allure/gradle/report/tasks/AllureReport.kt index b8e4c18..3f2580f 100644 --- a/allure-report-plugin/src/main/kotlin/io/qameta/allure/gradle/report/tasks/AllureReport.kt +++ b/allure-report-plugin/src/main/kotlin/io/qameta/allure/gradle/report/tasks/AllureReport.kt @@ -28,6 +28,11 @@ abstract class AllureReport @Inject constructor(objects: ObjectFactory) : Allure @Option(option = "clean", description = "Clean Allure report directory before generating a new one") val clean = objects.property().convention(false) + @Input + val singleFile = objects.property().convention( + project.the().report.singleFile + ) + companion object { const val NAME = "allureReport" const val GENERATE_COMMAND = "generate" @@ -50,6 +55,9 @@ abstract class AllureReport @Inject constructor(objects: ObjectFactory) : Allure if (clean.get()) { args += "--clean" } + if (singleFile.get()) { + args += "--single-file" + } args } )