summaryrefslogtreecommitdiff
path: root/buildSrc
diff options
context:
space:
mode:
authorFabian Mastenbroek <mail.fabianm@gmail.com>2021-05-03 21:12:00 +0200
committerGitHub <noreply@github.com>2021-05-03 21:12:00 +0200
commit17ffe995ee06d5755cd3943a5ea14f982884009e (patch)
tree2f360f1974bdbfd5f7fcd3d8e9c142b28650d7ed /buildSrc
parentc3ee3cb899d5259c619e79ff9f29984756c3813e (diff)
parentf081b9cab58a31a55c4f9dc6ccedd8cb92fc9242 (diff)
Prepare for OpenDC 2.0 release (v1)
This pull request performs several preparations for the official release of OpenDC 2.0. This pull request mostly focuses on documentation changes. ## Details 1. Restructure project documentation 2. Migrate to Dokka 1.4.32 3. Merge CI builds into single workflow
Diffstat (limited to 'buildSrc')
-rw-r--r--buildSrc/build.gradle.kts6
-rw-r--r--buildSrc/src/main/kotlin/distribution-conventions.gradle.kts50
-rw-r--r--buildSrc/src/main/kotlin/dokka-conventions.gradle.kts10
-rw-r--r--buildSrc/src/main/kotlin/kotlin-library-conventions.gradle.kts1
4 files changed, 60 insertions, 7 deletions
diff --git a/buildSrc/build.gradle.kts b/buildSrc/build.gradle.kts
index dc115999..94d6b19d 100644
--- a/buildSrc/build.gradle.kts
+++ b/buildSrc/build.gradle.kts
@@ -29,6 +29,11 @@ plugins {
/* Project configuration */
repositories {
gradlePluginPortal()
+ maven("https://maven.pkg.jetbrains.space/public/p/kotlinx-html/maven") {
+ content {
+ includeGroup("org.jetbrains.kotlinx")
+ }
+ }
}
dependencies {
@@ -37,6 +42,7 @@ dependencies {
implementation("org.jetbrains.dokka:dokka-gradle-plugin:0.10.1")
implementation("org.jetbrains.kotlin:kotlin-allopen:1.4.31")
implementation("org.jetbrains.kotlinx:kotlinx-benchmark-plugin:0.3.0")
+ implementation("org.jetbrains.dokka:dokka-gradle-plugin:1.4.32")
}
tasks.withType<KotlinCompile>().configureEach {
diff --git a/buildSrc/src/main/kotlin/distribution-conventions.gradle.kts b/buildSrc/src/main/kotlin/distribution-conventions.gradle.kts
new file mode 100644
index 00000000..a0b7593d
--- /dev/null
+++ b/buildSrc/src/main/kotlin/distribution-conventions.gradle.kts
@@ -0,0 +1,50 @@
+/*
+ * Copyright (c) 2021 AtLarge Research
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
+ * of this software and associated documentation files (the "Software"), to deal
+ * in the Software without restriction, including without limitation the rights
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+ * copies of the Software, and to permit persons to whom the Software is
+ * furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice shall be included in all
+ * copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
+ */
+
+import org.gradle.api.distribution.DistributionContainer
+
+
+plugins {
+ distribution
+}
+
+tasks.named("assembleDist") {
+ val tasks = getTasksByName("assembleDist", true).filter { it.project != project }
+ dependsOn(tasks)
+}
+
+distributions {
+ main {
+ contents {
+ duplicatesStrategy = DuplicatesStrategy.EXCLUDE
+
+ from("README.md")
+ from("LICENSE.txt")
+
+ // Include the distributions of the sub project.
+ getTasksByName("assembleDist", true)
+ .filter { it.project != project }
+ .map { it.project.the<DistributionContainer>()["main"] }
+ .forEach { with(it.contents) }
+ }
+ }
+}
diff --git a/buildSrc/src/main/kotlin/dokka-conventions.gradle.kts b/buildSrc/src/main/kotlin/dokka-conventions.gradle.kts
index 91156cbf..1df9a15c 100644
--- a/buildSrc/src/main/kotlin/dokka-conventions.gradle.kts
+++ b/buildSrc/src/main/kotlin/dokka-conventions.gradle.kts
@@ -1,7 +1,5 @@
/*
- * MIT License
- *
- * Copyright (c) 2021 atlarge-research
+ * Copyright (c) 2021 AtLarge Research
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
@@ -22,12 +20,10 @@
* SOFTWARE.
*/
-import org.jetbrains.dokka.gradle.DokkaTask
-
plugins {
id("org.jetbrains.dokka")
}
-tasks.getting(DokkaTask::class) {
- outputFormat = "html"
+repositories {
+ mavenCentral()
}
diff --git a/buildSrc/src/main/kotlin/kotlin-library-conventions.gradle.kts b/buildSrc/src/main/kotlin/kotlin-library-conventions.gradle.kts
index cf3f2569..43b1d148 100644
--- a/buildSrc/src/main/kotlin/kotlin-library-conventions.gradle.kts
+++ b/buildSrc/src/main/kotlin/kotlin-library-conventions.gradle.kts
@@ -28,6 +28,7 @@ plugins {
`java-library`
kotlin("jvm")
id("org.jlleitschuh.gradle.ktlint")
+ id("dokka-conventions")
}
/* Project configuration */