Skip to content

Commit

Permalink
Merge pull request #102 from teogor/docs/bom
Browse files Browse the repository at this point in the history
Add Documentation Generation for Ceres Libraries and BoM Versions
  • Loading branch information
teogor authored Sep 28, 2023
2 parents 19b9313 + bcc5e1e commit fee47fd
Showing 30 changed files with 1,279 additions and 332 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/android.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
name: Android CI

on:

# push:
# branches: [ main ]
# pull_request:
5 changes: 0 additions & 5 deletions .idea/codeStyles/Project.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

242 changes: 242 additions & 0 deletions .resources/bom/1.0.0-alpha01/dependencies-1.0.0-alpha01.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,242 @@
[
{
"name": "Ceres Backup Core",
"path": ":backup:core",
"groupId": "dev.teogor.ceres",
"artifactId": "backup-core",
"version": "1.0.0-alpha01",
"deprecated": false
},
{
"name": "Ceres Backup UI",
"path": ":backup:ui",
"groupId": "dev.teogor.ceres",
"artifactId": "backup-ui",
"version": "1.0.0-alpha01",
"deprecated": false
},
{
"name": "Ceres Core Network",
"path": ":core:network",
"groupId": "dev.teogor.ceres",
"artifactId": "core-network",
"version": "1.0.0-alpha01",
"deprecated": false
},
{
"name": "Ceres Core Notifications",
"path": ":core:notifications",
"groupId": "dev.teogor.ceres",
"artifactId": "core-notifications",
"version": "1.0.0-alpha01",
"deprecated": false
},
{
"name": "Ceres Core Runtime",
"path": ":core:runtime",
"groupId": "dev.teogor.ceres",
"artifactId": "core-runtime",
"version": "1.0.0-alpha01",
"deprecated": false
},
{
"name": "Ceres Core Startup",
"path": ":core:startup",
"groupId": "dev.teogor.ceres",
"artifactId": "core-startup",
"version": "1.0.0-alpha01",
"deprecated": false
},
{
"name": "Ceres Data Compose",
"path": ":data:compose",
"groupId": "dev.teogor.ceres",
"artifactId": "data-compose",
"version": "1.0.0-alpha01",
"deprecated": false
},
{
"name": "Ceres Data Database",
"path": ":data:database",
"groupId": "dev.teogor.ceres",
"artifactId": "data-database",
"version": "1.0.0-alpha01",
"deprecated": false
},
{
"name": "Ceres Data Datastore",
"path": ":data:datastore",
"groupId": "dev.teogor.ceres",
"artifactId": "data-datastore",
"version": "1.0.0-alpha01",
"deprecated": false
},
{
"name": "Ceres Firebase Analytics",
"path": ":firebase:analytics",
"groupId": "dev.teogor.ceres",
"artifactId": "firebase-analytics",
"version": "1.0.0-alpha01",
"deprecated": false
},
{
"name": "Ceres Firebase Crashlytics",
"path": ":firebase:crashlytics",
"groupId": "dev.teogor.ceres",
"artifactId": "firebase-crashlytics",
"version": "1.0.0-alpha01",
"deprecated": false
},
{
"name": "Ceres Firebase Remote-Config",
"path": ":firebase:remote-config",
"groupId": "dev.teogor.ceres",
"artifactId": "firebase-remote-config",
"version": "1.0.0-alpha01",
"deprecated": false
},
{
"name": "Ceres Framework Core",
"path": ":framework:core",
"groupId": "dev.teogor.ceres",
"artifactId": "framework-core",
"version": "1.0.0-alpha01",
"deprecated": false
},
{
"name": "Ceres Framework UI",
"path": ":framework:ui",
"groupId": "dev.teogor.ceres",
"artifactId": "framework-ui",
"version": "1.0.0-alpha01",
"deprecated": false
},
{
"name": "Ceres Monetisation AdMob",
"path": ":monetisation:admob",
"groupId": "dev.teogor.ceres",
"artifactId": "monetisation-admob",
"version": "1.0.0-alpha01",
"deprecated": false
},
{
"name": "Ceres Monetisation Messaging",
"path": ":monetisation:messaging",
"groupId": "dev.teogor.ceres",
"artifactId": "monetisation-messaging",
"version": "1.0.0-alpha01",
"deprecated": false
},
{
"name": "Ceres Navigation Common",
"path": ":navigation:common",
"groupId": "dev.teogor.ceres",
"artifactId": "navigation-common",
"version": "1.0.0-alpha01",
"deprecated": false
},
{
"name": "Ceres Navigation Core",
"path": ":navigation:core",
"groupId": "dev.teogor.ceres",
"artifactId": "navigation-core",
"version": "1.0.0-alpha01",
"deprecated": false
},
{
"name": "Ceres Navigation Events",
"path": ":navigation:events",
"groupId": "dev.teogor.ceres",
"artifactId": "navigation-events",
"version": "1.0.0-alpha01",
"deprecated": false
},
{
"name": "Ceres Navigation Screen",
"path": ":navigation:screen",
"groupId": "dev.teogor.ceres",
"artifactId": "navigation-screen",
"version": "1.0.0-alpha01",
"deprecated": false
},
{
"name": "Ceres Navigation UI",
"path": ":navigation:ui",
"groupId": "dev.teogor.ceres",
"artifactId": "navigation-ui",
"version": "1.0.0-alpha01",
"deprecated": false
},
{
"name": "Ceres Screen Builder",
"path": ":screen:builder",
"groupId": "dev.teogor.ceres",
"artifactId": "screen-builder",
"version": "1.0.0-alpha01",
"deprecated": false
},
{
"name": "Ceres Screen Core",
"path": ":screen:core",
"groupId": "dev.teogor.ceres",
"artifactId": "screen-core",
"version": "1.0.0-alpha01",
"deprecated": false
},
{
"name": "Ceres Screen UI",
"path": ":screen:ui",
"groupId": "dev.teogor.ceres",
"artifactId": "screen-ui",
"version": "1.0.0-alpha01",
"deprecated": false
},
{
"name": "Ceres UI Compose",
"path": ":ui:compose",
"groupId": "dev.teogor.ceres",
"artifactId": "ui-compose",
"version": "1.0.0-alpha01",
"deprecated": false
},
{
"name": "Ceres UI Design-System",
"path": ":ui:designsystem",
"groupId": "dev.teogor.ceres",
"artifactId": "ui-designsystem",
"version": "1.0.0-alpha01",
"deprecated": false
},
{
"name": "Ceres UI Foundation",
"path": ":ui:foundation",
"groupId": "dev.teogor.ceres",
"artifactId": "ui-foundation",
"version": "1.0.0-alpha01",
"deprecated": false
},
{
"name": "Ceres UI Icons",
"path": ":ui:icons",
"groupId": "dev.teogor.ceres",
"artifactId": "ui-icons",
"version": "1.0.0-alpha01",
"deprecated": false
},
{
"name": "Ceres UI Spectrum",
"path": ":ui:spectrum",
"groupId": "dev.teogor.ceres",
"artifactId": "ui-spectrum",
"version": "1.0.0-alpha01",
"deprecated": false
},
{
"name": "Ceres UI Theme",
"path": ":ui:theme",
"groupId": "dev.teogor.ceres",
"artifactId": "ui-theme",
"version": "1.0.0-alpha01",
"deprecated": false
}
]
6 changes: 6 additions & 0 deletions .resources/bom/versions.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
[
{
"version": "1.0.0-alpha01",
"date": 1695925132
}
]
1 change: 1 addition & 0 deletions bom/build.gradle.kts
Original file line number Diff line number Diff line change
@@ -36,6 +36,7 @@ afterEvaluate {
collectBomConstraints()

val ceresLibrary = project.extensions.getByType(CeresLibraryExtension::class.java)
ceresLibrary.name = "Ceres BoM"
mavenPublishing {
publishToMavenCentral(SonatypeHost.S01)
signAllPublications()
11 changes: 5 additions & 6 deletions build.gradle.kts
Original file line number Diff line number Diff line change
@@ -82,15 +82,13 @@ subprojects {
}
}


fun Project.addDokka(
enabled: Boolean,
) {
if(!enabled) {
if (!enabled) {
return
}
tasks.dokkaHtmlMultiModule.configure {
println("rootDir=$rootDir.")
outputDirectory.set(rootDir.resolve("docs/dokka"))
}

@@ -99,11 +97,9 @@ fun Project.addDokka(
":app",
)
if (parent == rootProject) {
if(!excludeModules.contains(path)) {
println("applying dokka for ?? $path")
if (!excludeModules.contains(path)) {
apply(plugin = "org.jetbrains.dokka")
subprojects {
println("applying dokka for submodule ?? $path")
apply(plugin = "org.jetbrains.dokka")
}

@@ -168,3 +164,6 @@ apiValidation {
validationDisabled = false
}

tasks.register<DependencyInfoGenerator>("generateDependenciesDocs") {
generateBomMapping()
}
11 changes: 2 additions & 9 deletions buildSrc/build.gradle.kts
Original file line number Diff line number Diff line change
@@ -18,16 +18,8 @@ import org.jetbrains.kotlin.gradle.tasks.KotlinCompile

plugins {
`kotlin-dsl`
id("com.gradle.plugin-publish") version "1.1.0"
alias(libs.plugins.vanniktech.maven)
}

repositories {
mavenLocal()
maven(url = "https://maven.google.com/")
mavenCentral()
maven(url = "https://storage.googleapis.com/android-ci/mvn/")
maven(url = "https://plugins.gradle.org/m2/")
kotlin("plugin.serialization") version "1.6.0"
}

java {
@@ -45,6 +37,7 @@ tasks.withType<KotlinCompile>().configureEach {

dependencies {
api(gradleApi())
implementation(libs.kotlinx.serialization.json)
}

gradlePlugin {
14 changes: 14 additions & 0 deletions buildSrc/settings.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,4 +1,18 @@
pluginManagement {
repositories {
google()
mavenCentral()
gradlePluginPortal()
}
}

@Suppress("UnstableApiUsage")
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
google()
mavenCentral()
}
versionCatalogs {
create("libs") {
from(files("${rootDir.parentFile}/gradle/libs.versions.toml"))
Loading

0 comments on commit fee47fd

Please sign in to comment.