From ced6fc84fe34ec04fd76a8f7aac814c44d921d04 Mon Sep 17 00:00:00 2001 From: Denver Coneybeare Date: Fri, 13 Jun 2025 12:04:58 -0400 Subject: [PATCH] dataconnect: demo: add "dokka" to generate ktdoc --- .github/workflows/dataconnect_demo_app.yml | 16 +++++++++++++++- firebase-dataconnect/demo/build.gradle.kts | 9 +++++++++ firebase-dataconnect/demo/gradle.properties | 3 +++ 3 files changed, 27 insertions(+), 1 deletion(-) diff --git a/.github/workflows/dataconnect_demo_app.yml b/.github/workflows/dataconnect_demo_app.yml index ccbc005ba1d..cc00b5379cc 100644 --- a/.github/workflows/dataconnect_demo_app.yml +++ b/.github/workflows/dataconnect_demo_app.yml @@ -106,12 +106,19 @@ jobs: set -x firebase-dataconnect/demo/gradlew \ --project-dir firebase-dataconnect/demo \ - --no-daemon \ ${{ (inputs.gradleInfoLog && '--info') || '' }} \ --profile \ -PdataConnect.demo.firebaseCommand=${{ env.FDC_FIREBASE_COMMAND }} \ assemble test + - name: gradle dokkaGeneratePublicationHtml + run: | + set -x + firebase-dataconnect/demo/gradlew \ + --project-dir firebase-dataconnect/demo \ + ${{ (inputs.gradleInfoLog && '--info') || '' }} \ + dokkaGeneratePublicationHtml + - uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1 with: name: apks @@ -126,6 +133,13 @@ jobs: if-no-files-found: warn compression-level: 9 + - uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1 + with: + name: ktdoc + path: firebase-dataconnect/demo/build/dokka/html + if-no-files-found: warn + compression-level: 9 + spotlessCheck: continue-on-error: false runs-on: ubuntu-latest diff --git a/firebase-dataconnect/demo/build.gradle.kts b/firebase-dataconnect/demo/build.gradle.kts index 80e76382d5f..5fc5d51bb5d 100644 --- a/firebase-dataconnect/demo/build.gradle.kts +++ b/firebase-dataconnect/demo/build.gradle.kts @@ -31,6 +31,8 @@ plugins { // The following code in this "plugins" block can be omitted from customer // facing documentation as it is an implementation detail of this application. id("com.diffplug.spotless") version "7.0.0.BETA4" + + id("org.jetbrains.dokka") version "2.0.0" } dependencies { @@ -55,6 +57,13 @@ dependencies { implementation("io.kotest.extensions:kotest-property-arbs:2.1.2") } +dokka { + moduleName.set("Data Connect Demo") + dokkaSourceSets.main { + sourceRoots.from(layout.buildDirectory.dir("dataConnect/generatedSources/").get()) + } +} + // The remaining code in this file can be omitted from customer facing // documentation. It's here just to make things compile and/or configure // optional components of the build (e.g. spotless code formatting). diff --git a/firebase-dataconnect/demo/gradle.properties b/firebase-dataconnect/demo/gradle.properties index cab63a85bad..7dbd8447c27 100644 --- a/firebase-dataconnect/demo/gradle.properties +++ b/firebase-dataconnect/demo/gradle.properties @@ -6,6 +6,9 @@ android.useAndroidX=true org.gradle.jvmargs=-Xmx2g +org.jetbrains.dokka.experimental.gradle.pluginMode=V2Enabled +org.jetbrains.dokka.experimental.gradle.pluginMode.noWarn=true + // The path of the "firebase" command to use. // If not specified, then "firebase" is used, resolved using the PATH environment variable. // See build.gradle.kts for details.