diff --git a/.gitignore b/.gitignore
index 5dc177e2..8a04b36a 100644
--- a/.gitignore
+++ b/.gitignore
@@ -8,3 +8,8 @@ settings.xml
.gradle/
build/
out/
+
+secret.gradle
+local.properties
+
+publishing.sh
diff --git a/build.gradle b/build.gradle
index 4f7abf8d..07759c6e 100644
--- a/build.gradle
+++ b/build.gradle
@@ -1,27 +1,31 @@
buildscript {
+ repositories {
+ jcenter()
+ google()
+ mavenCentral()
+ mavenLocal()
+ maven { url "https://plugins.gradle.org/m2/" }
+ }
+
+ dependencies {
+ classpath 'com.android.tools.build:gradle:4.0.2'
+ classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
+ classpath "org.jetbrains.kotlin:kotlin-serialization:$kotlin_version"
+ classpath "com.getkeepsafe.dexcount:dexcount-gradle-plugin:$dexcount_version"
+ classpath "com.github.breadmoirai:github-release:$github_release_plugin_version"
+ classpath "org.jetbrains.dokka:dokka-gradle-plugin:$dokka_version"
+ }
+}
+
+allprojects {
repositories {
mavenLocal()
jcenter()
mavenCentral()
+ google()
+ maven { url "https://kotlin.bintray.com/kotlinx" }
}
}
-repositories {
- mavenLocal()
- jcenter()
- mavenCentral()
- maven { url "https://kotlin.bintray.com/kotlinx" }
-}
-
-allprojects {
- ext {
- projectByName = { name ->
- for (subproject in rootProject.subprojects) {
- if (subproject.name == name) {
- return subproject
- }
- }
- return null
- }
- }
-}
+apply from: "./extensions.gradle"
+apply from: "./github_release.gradle"
diff --git a/business_cases/post_creating/client/build.gradle b/business_cases/post_creating/client/build.gradle
index 86824bcb..fbeae368 100644
--- a/business_cases/post_creating/client/build.gradle
+++ b/business_cases/post_creating/client/build.gradle
@@ -1,74 +1,20 @@
-buildscript {
- repositories {
- mavenLocal()
- jcenter()
- mavenCentral()
- }
-
- dependencies {
- classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
- classpath "org.jetbrains.kotlin:kotlin-serialization:$kotlin_version"
- }
-}
-
plugins {
- id "org.jetbrains.kotlin.multiplatform" version "$kotlin_version"
- id "org.jetbrains.kotlin.plugin.serialization" version "$kotlin_version"
+ id "org.jetbrains.kotlin.multiplatform"
+ id "org.jetbrains.kotlin.plugin.serialization"
+ id "com.android.library"
}
-project.version = "$core_version"
-project.group = "$group_name"
-
-repositories {
- mavenLocal()
- jcenter()
- mavenCentral()
- maven { url "https://kotlin.bintray.com/kotlinx" }
-}
+apply from: "$mppProjectWithSerializationPresetPath"
kotlin {
- jvm()
- js (BOTH) {
- browser()
- nodejs()
- }
-
sourceSets {
commonMain {
dependencies {
implementation kotlin('stdlib')
-
api project(":postssystem.business_cases.post_creating.common")
api project(":postssystem.core.ktor.client")
}
}
- commonTest {
- dependencies {
- implementation kotlin('test-common')
- implementation kotlin('test-annotations-common')
- }
- }
- jvmMain {
- dependencies {
- implementation kotlin('stdlib-jdk8')
- }
- }
- jvmTest {
- dependencies {
- implementation kotlin('test-junit')
- }
- }
- jsMain {
- dependencies {
- implementation kotlin('stdlib-js')
- }
- }
- jsTest {
- dependencies {
- implementation kotlin('test-js')
- implementation kotlin('test-junit')
- }
- }
}
}
diff --git a/business_cases/post_creating/client/src/main/AndroidManifest.xml b/business_cases/post_creating/client/src/main/AndroidManifest.xml
new file mode 100644
index 00000000..ead9e0fd
--- /dev/null
+++ b/business_cases/post_creating/client/src/main/AndroidManifest.xml
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/business_cases/post_creating/common/build.gradle b/business_cases/post_creating/common/build.gradle
index 7e2e2384..132aba83 100644
--- a/business_cases/post_creating/common/build.gradle
+++ b/business_cases/post_creating/common/build.gradle
@@ -1,38 +1,12 @@
-buildscript {
- repositories {
- mavenLocal()
- jcenter()
- mavenCentral()
- }
-
- dependencies {
- classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
- classpath "org.jetbrains.kotlin:kotlin-serialization:$kotlin_version"
- }
-}
-
plugins {
- id "org.jetbrains.kotlin.multiplatform" version "$kotlin_version"
- id "org.jetbrains.kotlin.plugin.serialization" version "$kotlin_version"
+ id "org.jetbrains.kotlin.multiplatform"
+ id "org.jetbrains.kotlin.plugin.serialization"
+ id "com.android.library"
}
-project.version = "$core_version"
-project.group = "$group_name"
-
-repositories {
- mavenLocal()
- jcenter()
- mavenCentral()
- maven { url "https://kotlin.bintray.com/kotlinx" }
-}
+apply from: "$mppProjectWithSerializationPresetPath"
kotlin {
- jvm()
- js (BOTH) {
- browser()
- nodejs()
- }
-
sourceSets {
commonMain {
dependencies {
@@ -42,32 +16,5 @@ kotlin {
api project(":postssystem.publishing.ktor.common")
}
}
- commonTest {
- dependencies {
- implementation kotlin('test-common')
- implementation kotlin('test-annotations-common')
- }
- }
- jvmMain {
- dependencies {
- implementation kotlin('stdlib-jdk8')
- }
- }
- jvmTest {
- dependencies {
- implementation kotlin('test-junit')
- }
- }
- jsMain {
- dependencies {
- implementation kotlin('stdlib-js')
- }
- }
- jsTest {
- dependencies {
- implementation kotlin('test-js')
- implementation kotlin('test-junit')
- }
- }
}
}
diff --git a/business_cases/post_creating/common/src/main/AndroidManifest.xml b/business_cases/post_creating/common/src/main/AndroidManifest.xml
new file mode 100644
index 00000000..42d81edc
--- /dev/null
+++ b/business_cases/post_creating/common/src/main/AndroidManifest.xml
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/business_cases/post_creating/server/build.gradle b/business_cases/post_creating/server/build.gradle
index 5cf1046d..c8a26a1c 100644
--- a/business_cases/post_creating/server/build.gradle
+++ b/business_cases/post_creating/server/build.gradle
@@ -1,40 +1,24 @@
-buildscript {
- repositories {
- mavenLocal()
- jcenter()
- mavenCentral()
- }
-
- dependencies {
- classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
- classpath "org.jetbrains.kotlin:kotlin-serialization:$kotlin_version"
- }
-}
-
plugins {
- id "org.jetbrains.kotlin.plugin.serialization" version "$kotlin_version"
+ id "org.jetbrains.kotlin.multiplatform"
+ id "org.jetbrains.kotlin.plugin.serialization"
}
-project.version = "$core_version"
-project.group = "$group_name"
+apply from: "$mppJavaProjectPresetPath"
-apply plugin: "java-library"
-apply plugin: "kotlin"
-
-repositories {
- mavenLocal()
- jcenter()
- mavenCentral()
- maven { url "https://kotlin.bintray.com/kotlinx" }
-}
-
-dependencies {
- implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
-
- api project(":postssystem.business_cases.post_creating.common")
- api project(":postssystem.core.ktor.server")
-
- testImplementation "org.xerial:sqlite-jdbc:$test_sqlite_version"
- testImplementation "org.jetbrains.kotlin:kotlin-test"
- testImplementation "org.jetbrains.kotlin:kotlin-test-junit"
+kotlin {
+ sourceSets {
+ commonMain {
+ dependencies {
+ api project(":postssystem.business_cases.post_creating.common")
+ api project(":postssystem.core.ktor.server")
+ }
+ }
+ jvmTest {
+ dependencies {
+ implementation "org.xerial:sqlite-jdbc:$test_sqlite_version"
+ implementation "org.jetbrains.kotlin:kotlin-test"
+ implementation "org.jetbrains.kotlin:kotlin-test-junit"
+ }
+ }
+ }
}
diff --git a/business_cases/post_creating/server/src/main/kotlin/dev/inmo/postssystem/business_cases/post_creating/server/PostCreatingRoutingCase.kt b/business_cases/post_creating/server/src/jvmMain/kotlin/dev/inmo/postssystem/business_cases/post_creating/server/PostCreatingRoutingCase.kt
similarity index 100%
rename from business_cases/post_creating/server/src/main/kotlin/dev/inmo/postssystem/business_cases/post_creating/server/PostCreatingRoutingCase.kt
rename to business_cases/post_creating/server/src/jvmMain/kotlin/dev/inmo/postssystem/business_cases/post_creating/server/PostCreatingRoutingCase.kt
diff --git a/changelog_parser.sh b/changelog_parser.sh
new file mode 100755
index 00000000..9dd39e6d
--- /dev/null
+++ b/changelog_parser.sh
@@ -0,0 +1,24 @@
+#!/bin/bash
+
+function parse() {
+ version="$1"
+
+ while IFS= read -r line && [ -z "`echo "$line" | grep -e "^#\+ $version"`" ]
+ do
+ : # do nothing
+ done
+
+ while IFS= read -r line && [ -z "`echo "$line" | grep -e "^#\+"`" ]
+ do
+ echo "$line"
+ done
+}
+
+version="$1"
+file="$2"
+
+if [ -n "$file" ]; then
+ parse "$version" < "$file"
+else
+ parse "$version"
+fi
diff --git a/core/api/build.gradle b/core/api/build.gradle
index 8d4483b4..aac368e1 100644
--- a/core/api/build.gradle
+++ b/core/api/build.gradle
@@ -1,44 +1,15 @@
-buildscript {
- repositories {
- mavenLocal()
- jcenter()
- mavenCentral()
- }
-
- dependencies {
- classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
- classpath "org.jetbrains.kotlin:kotlin-serialization:$kotlin_version"
- }
-}
-
plugins {
- id "org.jetbrains.kotlin.multiplatform" version "$kotlin_version"
- id "org.jetbrains.kotlin.plugin.serialization" version "$kotlin_version"
+ id "org.jetbrains.kotlin.multiplatform"
+ id "org.jetbrains.kotlin.plugin.serialization"
+ id "com.android.library"
}
-project.version = "$core_version"
-project.group = "$group_name"
-
-apply from: "publish.gradle"
-
-repositories {
- mavenLocal()
- jcenter()
- mavenCentral()
- maven { url "https://kotlin.bintray.com/kotlinx" }
-}
+apply from: "$mppProjectWithSerializationPresetPath"
kotlin {
- jvm()
- js (BOTH) {
- browser()
- nodejs()
- }
-
sourceSets {
commonMain {
dependencies {
- implementation kotlin('stdlib')
api kotlin('reflect')
api "com.soywiz.korlibs.klock:klock:$klockVersion"
@@ -47,22 +18,5 @@ kotlin {
api "dev.inmo:micro_utils.mime_types:$microutils_version"
}
}
- commonTest {
- dependencies {
- implementation kotlin('test-common')
- implementation kotlin('test-annotations-common')
- }
- }
- jvmTest {
- dependencies {
- implementation kotlin('test-junit')
- }
- }
- jsTest {
- dependencies {
- implementation kotlin('test-js')
- implementation kotlin('test-junit')
- }
- }
}
}
diff --git a/core/api/src/main/AndroidManifest.xml b/core/api/src/main/AndroidManifest.xml
new file mode 100644
index 00000000..22770f50
--- /dev/null
+++ b/core/api/src/main/AndroidManifest.xml
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/core/exposed/build.gradle b/core/exposed/build.gradle
index 674572e3..3f6b7f64 100644
--- a/core/exposed/build.gradle
+++ b/core/exposed/build.gradle
@@ -1,43 +1,26 @@
-buildscript {
- repositories {
- mavenLocal()
- jcenter()
- mavenCentral()
- }
-
- dependencies {
- classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
- classpath "org.jetbrains.kotlin:kotlin-serialization:$kotlin_version"
- }
-}
-
plugins {
- id "org.jetbrains.kotlin.plugin.serialization" version "$kotlin_version"
+ id "org.jetbrains.kotlin.multiplatform"
+ id "org.jetbrains.kotlin.plugin.serialization"
}
-project.version = "$core_version"
-project.group = "$group_name"
+apply from: "$mppJavaProjectPresetPath"
-apply plugin: "java-library"
-apply plugin: "kotlin"
-apply from: "./publish.gradle"
+kotlin {
+ sourceSets {
+ commonMain {
+ dependencies {
+ api "dev.inmo:micro_utils.repos.exposed:$microutils_version"
-repositories {
- mavenLocal()
- jcenter()
- mavenCentral()
- maven { url "https://kotlin.bintray.com/kotlinx" }
-}
-
-dependencies {
- implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
-
- api "dev.inmo:micro_utils.repos.exposed:$microutils_version"
-
- api project(":postssystem.core.api")
-
- testImplementation "org.jetbrains.exposed:exposed-jdbc:$exposed_version"
- testImplementation "org.xerial:sqlite-jdbc:$test_sqlite_version"
- testImplementation "org.jetbrains.kotlin:kotlin-test"
- testImplementation "org.jetbrains.kotlin:kotlin-test-junit"
+ api project(":postssystem.core.api")
+ }
+ }
+ jvmTest {
+ dependencies {
+ implementation "org.jetbrains.exposed:exposed-jdbc:$exposed_version"
+ implementation "org.xerial:sqlite-jdbc:$test_sqlite_version"
+ implementation "org.jetbrains.kotlin:kotlin-test"
+ implementation "org.jetbrains.kotlin:kotlin-test-junit"
+ }
+ }
+ }
}
diff --git a/core/exposed/src/main/kotlin/dev/inmo/postssystem/core/exposed/ExposedContentRepo.kt b/core/exposed/src/jvmMain/kotlin/dev/inmo/postssystem/core/exposed/ExposedContentRepo.kt
similarity index 100%
rename from core/exposed/src/main/kotlin/dev/inmo/postssystem/core/exposed/ExposedContentRepo.kt
rename to core/exposed/src/jvmMain/kotlin/dev/inmo/postssystem/core/exposed/ExposedContentRepo.kt
diff --git a/core/exposed/src/main/kotlin/dev/inmo/postssystem/core/exposed/ExposedPostsRepo.kt b/core/exposed/src/jvmMain/kotlin/dev/inmo/postssystem/core/exposed/ExposedPostsRepo.kt
similarity index 100%
rename from core/exposed/src/main/kotlin/dev/inmo/postssystem/core/exposed/ExposedPostsRepo.kt
rename to core/exposed/src/jvmMain/kotlin/dev/inmo/postssystem/core/exposed/ExposedPostsRepo.kt
diff --git a/core/exposed/src/main/kotlin/dev/inmo/postssystem/core/exposed/content/BinaryContentHolderRepo.kt b/core/exposed/src/jvmMain/kotlin/dev/inmo/postssystem/core/exposed/content/BinaryContentHolderRepo.kt
similarity index 100%
rename from core/exposed/src/main/kotlin/dev/inmo/postssystem/core/exposed/content/BinaryContentHolderRepo.kt
rename to core/exposed/src/jvmMain/kotlin/dev/inmo/postssystem/core/exposed/content/BinaryContentHolderRepo.kt
diff --git a/core/exposed/src/main/kotlin/dev/inmo/postssystem/core/exposed/content/ContentHolderRepo.kt b/core/exposed/src/jvmMain/kotlin/dev/inmo/postssystem/core/exposed/content/ContentHolderRepo.kt
similarity index 100%
rename from core/exposed/src/main/kotlin/dev/inmo/postssystem/core/exposed/content/ContentHolderRepo.kt
rename to core/exposed/src/jvmMain/kotlin/dev/inmo/postssystem/core/exposed/content/ContentHolderRepo.kt
diff --git a/core/exposed/src/main/kotlin/dev/inmo/postssystem/core/exposed/content/SpecialContentHolderRepo.kt b/core/exposed/src/jvmMain/kotlin/dev/inmo/postssystem/core/exposed/content/SpecialContentHolderRepo.kt
similarity index 100%
rename from core/exposed/src/main/kotlin/dev/inmo/postssystem/core/exposed/content/SpecialContentHolderRepo.kt
rename to core/exposed/src/jvmMain/kotlin/dev/inmo/postssystem/core/exposed/content/SpecialContentHolderRepo.kt
diff --git a/core/exposed/src/main/kotlin/dev/inmo/postssystem/core/exposed/content/TextContentHolderRepo.kt b/core/exposed/src/jvmMain/kotlin/dev/inmo/postssystem/core/exposed/content/TextContentHolderRepo.kt
similarity index 100%
rename from core/exposed/src/main/kotlin/dev/inmo/postssystem/core/exposed/content/TextContentHolderRepo.kt
rename to core/exposed/src/jvmMain/kotlin/dev/inmo/postssystem/core/exposed/content/TextContentHolderRepo.kt
diff --git a/core/exposed/src/test/kotlin/dev/inmo/postssystem/core/exposed/ExposedContentAPICommonTests.kt b/core/exposed/src/jvmTest/kotlin/dev/inmo/postssystem/core/exposed/ExposedContentAPICommonTests.kt
similarity index 100%
rename from core/exposed/src/test/kotlin/dev/inmo/postssystem/core/exposed/ExposedContentAPICommonTests.kt
rename to core/exposed/src/jvmTest/kotlin/dev/inmo/postssystem/core/exposed/ExposedContentAPICommonTests.kt
diff --git a/core/exposed/src/test/kotlin/dev/inmo/postssystem/core/exposed/ExposedPostsRepoCommonTests.kt b/core/exposed/src/jvmTest/kotlin/dev/inmo/postssystem/core/exposed/ExposedPostsRepoCommonTests.kt
similarity index 100%
rename from core/exposed/src/test/kotlin/dev/inmo/postssystem/core/exposed/ExposedPostsRepoCommonTests.kt
rename to core/exposed/src/jvmTest/kotlin/dev/inmo/postssystem/core/exposed/ExposedPostsRepoCommonTests.kt
diff --git a/core/ktor/client/build.gradle b/core/ktor/client/build.gradle
index d67565b8..440347fd 100644
--- a/core/ktor/client/build.gradle
+++ b/core/ktor/client/build.gradle
@@ -1,40 +1,12 @@
-buildscript {
- repositories {
- mavenLocal()
- jcenter()
- mavenCentral()
- }
-
- dependencies {
- classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
- classpath "org.jetbrains.kotlin:kotlin-serialization:$kotlin_version"
- }
-}
-
plugins {
- id "org.jetbrains.kotlin.multiplatform" version "$kotlin_version"
- id "org.jetbrains.kotlin.plugin.serialization" version "$kotlin_version"
+ id "org.jetbrains.kotlin.multiplatform"
+ id "org.jetbrains.kotlin.plugin.serialization"
+ id "com.android.library"
}
-project.version = "$core_version"
-project.group = "$group_name"
-
-apply from: "publish.gradle"
-
-repositories {
- mavenLocal()
- jcenter()
- mavenCentral()
- maven { url "https://kotlin.bintray.com/kotlinx" }
-}
+apply from: "$mppProjectWithSerializationPresetPath"
kotlin {
- jvm()
- js (BOTH) {
- browser()
- nodejs()
- }
-
sourceSets {
commonMain {
dependencies {
@@ -46,32 +18,5 @@ kotlin {
api project(":postssystem.core.ktor.common")
}
}
- commonTest {
- dependencies {
- implementation kotlin('test-common')
- implementation kotlin('test-annotations-common')
- }
- }
- jvmMain {
- dependencies {
- implementation kotlin('stdlib-jdk8')
- }
- }
- jvmTest {
- dependencies {
- implementation kotlin('test-junit')
- }
- }
- jsMain {
- dependencies {
- implementation kotlin('stdlib-js')
- }
- }
- jsTest {
- dependencies {
- implementation kotlin('test-js')
- implementation kotlin('test-junit')
- }
- }
}
}
diff --git a/core/ktor/client/src/main/AndroidManifest.xml b/core/ktor/client/src/main/AndroidManifest.xml
new file mode 100644
index 00000000..3681aaa3
--- /dev/null
+++ b/core/ktor/client/src/main/AndroidManifest.xml
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/core/ktor/common/build.gradle b/core/ktor/common/build.gradle
index bf181a79..7ca05c0e 100644
--- a/core/ktor/common/build.gradle
+++ b/core/ktor/common/build.gradle
@@ -1,40 +1,12 @@
-buildscript {
- repositories {
- mavenLocal()
- jcenter()
- mavenCentral()
- }
-
- dependencies {
- classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
- classpath "org.jetbrains.kotlin:kotlin-serialization:$kotlin_version"
- }
-}
-
plugins {
- id "org.jetbrains.kotlin.multiplatform" version "$kotlin_version"
- id "org.jetbrains.kotlin.plugin.serialization" version "$kotlin_version"
+ id "org.jetbrains.kotlin.multiplatform"
+ id "org.jetbrains.kotlin.plugin.serialization"
+ id "com.android.library"
}
-project.version = "$core_version"
-project.group = "$group_name"
-
-apply from: "publish.gradle"
-
-repositories {
- mavenLocal()
- jcenter()
- mavenCentral()
- maven { url "https://kotlin.bintray.com/kotlinx" }
-}
+apply from: "$mppProjectWithSerializationPresetPath"
kotlin {
- jvm()
- js (BOTH) {
- browser()
- nodejs()
- }
-
sourceSets {
commonMain {
dependencies {
@@ -45,32 +17,5 @@ kotlin {
api project(":postssystem.core.api")
}
}
- commonTest {
- dependencies {
- implementation kotlin('test-common')
- implementation kotlin('test-annotations-common')
- }
- }
- jvmMain {
- dependencies {
- implementation kotlin('stdlib-jdk8')
- }
- }
- jvmTest {
- dependencies {
- implementation kotlin('test-junit')
- }
- }
- jsMain {
- dependencies {
- implementation kotlin('stdlib-js')
- }
- }
- jsTest {
- dependencies {
- implementation kotlin('test-js')
- implementation kotlin('test-junit')
- }
- }
}
}
diff --git a/core/ktor/common/src/main/AndroidManifest.xml b/core/ktor/common/src/main/AndroidManifest.xml
new file mode 100644
index 00000000..d17b3d4d
--- /dev/null
+++ b/core/ktor/common/src/main/AndroidManifest.xml
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/core/ktor/server/build.gradle b/core/ktor/server/build.gradle
index 0ffb4bc7..d4838c8a 100644
--- a/core/ktor/server/build.gradle
+++ b/core/ktor/server/build.gradle
@@ -1,42 +1,26 @@
-buildscript {
- repositories {
- mavenLocal()
- jcenter()
- mavenCentral()
- }
-
- dependencies {
- classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
- classpath "org.jetbrains.kotlin:kotlin-serialization:$kotlin_version"
- }
-}
-
plugins {
- id "org.jetbrains.kotlin.plugin.serialization" version "$kotlin_version"
+ id "org.jetbrains.kotlin.multiplatform"
+ id "org.jetbrains.kotlin.plugin.serialization"
}
-project.version = "$core_version"
-project.group = "$group_name"
+apply from: "$mppJavaProjectPresetPath"
-apply plugin: "java-library"
-apply plugin: "kotlin"
+kotlin {
+ sourceSets {
+ commonMain {
+ dependencies {
+ api "dev.inmo:micro_utils.pagination.ktor.server:$microutils_version"
+ api "dev.inmo:micro_utils.ktor.server:$microutils_version"
-repositories {
- mavenLocal()
- jcenter()
- mavenCentral()
- maven { url "https://kotlin.bintray.com/kotlinx" }
-}
-
-dependencies {
- implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
-
- api "dev.inmo:micro_utils.pagination.ktor.server:$microutils_version"
- api "dev.inmo:micro_utils.ktor.server:$microutils_version"
-
- api project(":postssystem.core.ktor.common")
-
- testImplementation "org.xerial:sqlite-jdbc:$test_sqlite_version"
- testImplementation "org.jetbrains.kotlin:kotlin-test"
- testImplementation "org.jetbrains.kotlin:kotlin-test-junit"
+ api project(":postssystem.core.ktor.common")
+ }
+ }
+ jvmTest {
+ dependencies {
+ implementation "org.xerial:sqlite-jdbc:$test_sqlite_version"
+ implementation "org.jetbrains.kotlin:kotlin-test"
+ implementation "org.jetbrains.kotlin:kotlin-test-junit"
+ }
+ }
+ }
}
diff --git a/core/ktor/server/src/main/kotlin/dev/inmo/postssystem/core/ktor/server/content/ContentRepoRoutingConfigurator.kt b/core/ktor/server/src/jvmMain/kotlin/dev/inmo/postssystem/core/ktor/server/content/ContentRepoRoutingConfigurator.kt
similarity index 100%
rename from core/ktor/server/src/main/kotlin/dev/inmo/postssystem/core/ktor/server/content/ContentRepoRoutingConfigurator.kt
rename to core/ktor/server/src/jvmMain/kotlin/dev/inmo/postssystem/core/ktor/server/content/ContentRepoRoutingConfigurator.kt
diff --git a/core/ktor/server/src/main/kotlin/dev/inmo/postssystem/core/ktor/server/content/ReadContentRepoRoutingConfigurator.kt b/core/ktor/server/src/jvmMain/kotlin/dev/inmo/postssystem/core/ktor/server/content/ReadContentRepoRoutingConfigurator.kt
similarity index 100%
rename from core/ktor/server/src/main/kotlin/dev/inmo/postssystem/core/ktor/server/content/ReadContentRepoRoutingConfigurator.kt
rename to core/ktor/server/src/jvmMain/kotlin/dev/inmo/postssystem/core/ktor/server/content/ReadContentRepoRoutingConfigurator.kt
diff --git a/core/ktor/server/src/main/kotlin/dev/inmo/postssystem/core/ktor/server/content/WriteContentRepoRoutingConfigurator.kt b/core/ktor/server/src/jvmMain/kotlin/dev/inmo/postssystem/core/ktor/server/content/WriteContentRepoRoutingConfigurator.kt
similarity index 100%
rename from core/ktor/server/src/main/kotlin/dev/inmo/postssystem/core/ktor/server/content/WriteContentRepoRoutingConfigurator.kt
rename to core/ktor/server/src/jvmMain/kotlin/dev/inmo/postssystem/core/ktor/server/content/WriteContentRepoRoutingConfigurator.kt
diff --git a/core/ktor/server/src/main/kotlin/dev/inmo/postssystem/core/ktor/server/post/PostsRepoRoutingConfigurator.kt b/core/ktor/server/src/jvmMain/kotlin/dev/inmo/postssystem/core/ktor/server/post/PostsRepoRoutingConfigurator.kt
similarity index 100%
rename from core/ktor/server/src/main/kotlin/dev/inmo/postssystem/core/ktor/server/post/PostsRepoRoutingConfigurator.kt
rename to core/ktor/server/src/jvmMain/kotlin/dev/inmo/postssystem/core/ktor/server/post/PostsRepoRoutingConfigurator.kt
diff --git a/core/ktor/server/src/main/kotlin/dev/inmo/postssystem/core/ktor/server/post/ReadPostsRepoRoutingConfigurator.kt b/core/ktor/server/src/jvmMain/kotlin/dev/inmo/postssystem/core/ktor/server/post/ReadPostsRepoRoutingConfigurator.kt
similarity index 100%
rename from core/ktor/server/src/main/kotlin/dev/inmo/postssystem/core/ktor/server/post/ReadPostsRepoRoutingConfigurator.kt
rename to core/ktor/server/src/jvmMain/kotlin/dev/inmo/postssystem/core/ktor/server/post/ReadPostsRepoRoutingConfigurator.kt
diff --git a/core/ktor/server/src/main/kotlin/dev/inmo/postssystem/core/ktor/server/post/WritePostsRepoRoutingConfigurator.kt b/core/ktor/server/src/jvmMain/kotlin/dev/inmo/postssystem/core/ktor/server/post/WritePostsRepoRoutingConfigurator.kt
similarity index 100%
rename from core/ktor/server/src/main/kotlin/dev/inmo/postssystem/core/ktor/server/post/WritePostsRepoRoutingConfigurator.kt
rename to core/ktor/server/src/jvmMain/kotlin/dev/inmo/postssystem/core/ktor/server/post/WritePostsRepoRoutingConfigurator.kt
diff --git a/defaultAndroidSettings b/defaultAndroidSettings
new file mode 100644
index 00000000..99e258a1
--- /dev/null
+++ b/defaultAndroidSettings
@@ -0,0 +1,38 @@
+android {
+ compileSdkVersion "$android_compileSdkVersion".toInteger()
+ buildToolsVersion "$android_buildToolsVersion"
+
+ defaultConfig {
+ minSdkVersion "$android_minSdkVersion".toInteger()
+ targetSdkVersion "$android_compileSdkVersion".toInteger()
+ versionCode "${android_code_version}".toInteger()
+ versionName "$version"
+ }
+ buildTypes {
+ release {
+ minifyEnabled false
+ }
+ debug {
+ debuggable true
+ }
+ }
+
+ packagingOptions {
+ exclude 'META-INF/kotlinx-serialization-runtime.kotlin_module'
+ exclude 'META-INF/kotlinx-serialization-cbor.kotlin_module'
+ exclude 'META-INF/kotlinx-serialization-properties.kotlin_module'
+ }
+
+ compileOptions {
+ sourceCompatibility JavaVersion.VERSION_1_8
+ targetCompatibility JavaVersion.VERSION_1_8
+ }
+
+ kotlinOptions {
+ jvmTarget = JavaVersion.VERSION_1_8.toString()
+ }
+
+ sourceSets {
+ main.java.srcDirs += 'src/main/kotlin'
+ }
+}
diff --git a/extensions.gradle b/extensions.gradle
new file mode 100644
index 00000000..22283359
--- /dev/null
+++ b/extensions.gradle
@@ -0,0 +1,11 @@
+allprojects {
+ ext {
+ mppProjectWithSerializationPresetPath = "${rootProject.projectDir.absolutePath}/mppProjectWithSerialization"
+ mppJavaProjectPresetPath = "${rootProject.projectDir.absolutePath}/mppJavaProject"
+ mppAndroidProjectPresetPath = "${rootProject.projectDir.absolutePath}/mppAndroidProject"
+
+ defaultAndroidSettingsPresetPath = "${rootProject.projectDir.absolutePath}/defaultAndroidSettings"
+
+ publishGradlePath = "${rootProject.projectDir.absolutePath}/publish.gradle"
+ }
+}
diff --git a/github_release.gradle b/github_release.gradle
new file mode 100644
index 00000000..a9fc2e39
--- /dev/null
+++ b/github_release.gradle
@@ -0,0 +1,30 @@
+private String getCurrentVersionChangelog() {
+ OutputStream changelogDataOS = new ByteArrayOutputStream()
+ exec {
+ commandLine 'chmod', "+x", './changelog_parser.sh'
+ }
+ exec {
+ standardOutput = changelogDataOS
+ commandLine './changelog_parser.sh', "${project.version}", 'CHANGELOG.md'
+ }
+
+ return changelogDataOS.toString().trim()
+}
+
+if (new File(projectDir, "secret.gradle").exists()) {
+ apply from: './secret.gradle'
+ apply plugin: "com.github.breadmoirai.github-release"
+
+ githubRelease {
+ token "${project.property('GITHUB_RELEASE_TOKEN')}"
+
+ owner "PostsSystem"
+ repo "Core"
+
+ tagName "${project.version}"
+ releaseName "${project.version}"
+ targetCommitish "${project.version}"
+
+ body getCurrentVersionChangelog()
+ }
+}
diff --git a/gradle.properties b/gradle.properties
index 938b3c76..30cc66f7 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -1,11 +1,18 @@
kotlin.code.style=official
org.gradle.parallel=true
+kotlin.js.generate.externals=true
+kotlin.incremental=true
+kotlin.incremental.js=true
+android.useAndroidX=true
+android.enableJetifier=true
+org.gradle.jvmargs=-Xmx2048m
+
kotlin_version=1.4.20
kotlin_coroutines_version=1.4.1
kotlin_serialisation_core_version=1.0.1
+kotlin_exposed_version=0.28.1
ktor_version=1.4.2
-
klockVersion=2.0.0
uuidVersion=0.2.3
@@ -16,5 +23,28 @@ microutils_version=0.4.5
javax_activation_version=1.1.1
+github_release_plugin_version=2.2.12
+
+# ANDROID
+
+core_ktx_version=1.3.2
+androidx_recycler_version=1.1.0
+appcompat_version=1.2.0
+
+android_minSdkVersion=19
+android_compileSdkVersion=30
+android_buildToolsVersion=30.0.2
+dexcount_version=2.0.0-RC1
+junit_version=4.12
+test_ext_junit_version=1.1.2
+espresso_core=3.3.0
+
+# Dokka
+
+dokka_version=1.4.0
+
+# Project data
+
core_version=0.6.0
+android_code_version=1
group_name=dev.inmo
diff --git a/mppAndroidProject b/mppAndroidProject
new file mode 100644
index 00000000..7896635e
--- /dev/null
+++ b/mppAndroidProject
@@ -0,0 +1,26 @@
+project.version = "$version"
+project.group = "$group"
+
+apply from: "$publishGradlePath"
+
+kotlin {
+ android {
+ publishAllLibraryVariants()
+ }
+
+ sourceSets {
+ commonMain {
+ dependencies {
+ implementation kotlin('stdlib')
+ }
+ }
+ commonTest {
+ dependencies {
+ implementation kotlin('test-common')
+ implementation kotlin('test-annotations-common')
+ }
+ }
+ }
+}
+
+apply from: "$defaultAndroidSettingsPresetPath"
diff --git a/mppJavaProject b/mppJavaProject
new file mode 100644
index 00000000..bbebd525
--- /dev/null
+++ b/mppJavaProject
@@ -0,0 +1,28 @@
+project.version = "$version"
+project.group = "$group"
+
+apply from: "$publishGradlePath"
+
+kotlin {
+ jvm()
+
+ sourceSets {
+ commonMain {
+ dependencies {
+ implementation kotlin('stdlib')
+ }
+ }
+ commonTest {
+ dependencies {
+ implementation kotlin('test-common')
+ implementation kotlin('test-annotations-common')
+ }
+ }
+
+ jvmTest {
+ dependencies {
+ implementation kotlin('test-junit')
+ }
+ }
+ }
+}
diff --git a/mppProjectWithSerialization b/mppProjectWithSerialization
new file mode 100644
index 00000000..d36a6c1c
--- /dev/null
+++ b/mppProjectWithSerialization
@@ -0,0 +1,50 @@
+project.version = "$version"
+project.group = "$group"
+
+apply from: "$publishGradlePath"
+
+kotlin {
+ jvm()
+ js (BOTH) {
+ browser()
+ nodejs()
+ }
+ android {
+ publishAllLibraryVariants()
+ }
+
+ sourceSets {
+ commonMain {
+ dependencies {
+ implementation kotlin('stdlib')
+ api "org.jetbrains.kotlinx:kotlinx-serialization-json:$kotlin_serialisation_core_version"
+ }
+ }
+ commonTest {
+ dependencies {
+ implementation kotlin('test-common')
+ implementation kotlin('test-annotations-common')
+ }
+ }
+ jvmTest {
+ dependencies {
+ implementation kotlin('test-junit')
+ }
+ }
+ jsTest {
+ dependencies {
+ implementation kotlin('test-js')
+ implementation kotlin('test-junit')
+ }
+ }
+ androidTest {
+ dependencies {
+ implementation kotlin('test-junit')
+ implementation "androidx.test.ext:junit:$test_ext_junit_version"
+ implementation "androidx.test.espresso:espresso-core:$espresso_core"
+ }
+ }
+ }
+}
+
+apply from: "$defaultAndroidSettingsPresetPath"
diff --git a/pubconf.kpsb b/pubconf.kpsb
new file mode 100644
index 00000000..76b37324
--- /dev/null
+++ b/pubconf.kpsb
@@ -0,0 +1 @@
+{"bintrayConfig":{"repo":"releaseMode","packageName":"${project.name}","packageVcs":"https://git.inmo.dev:8322/PostsSystem/Core","autoPublish":true,"overridePublish":true},"licenses":[{"id":"Apache-2.0","title":"Apache Software License 2.0","url":"https://git.inmo.dev/InsanusMokrassar/MicroUtils_mirror/src/master/LICENSE"}],"mavenConfig":{"name":"${project.name}","description":"","url":"https://git.inmo.dev:8322/PostsSystem/Core","vcsUrl":"ssh://git@git.inmo.dev:8322/PostsSystem/Core.git","developers":[{"id":"InsanusMokrassar","name":"Aleksei Ovsiannikov","eMail":"ovsyannikov.alexey95@gmail.com"},{"id":"000Sanya","name":"Syrov Aleksandr","eMail":"000sanya.000sanya@gmail.com"}]}}
\ No newline at end of file
diff --git a/publish.gradle b/publish.gradle
new file mode 100644
index 00000000..b3ed9101
--- /dev/null
+++ b/publish.gradle
@@ -0,0 +1,76 @@
+apply plugin: 'maven-publish'
+
+task javadocsJar(type: Jar) {
+ classifier = 'javadoc'
+}
+task sourceJar (type : Jar) {
+ classifier = 'sources'
+}
+
+afterEvaluate {
+ project.publishing.publications.all {
+ // rename artifacts
+ groupId "${project.group}"
+ if (it.name.contains('kotlinMultiplatform')) {
+ artifactId = "${project.name}"
+ artifact sourceJar
+ } else {
+ artifactId = "${project.name}-$name"
+ }
+ }
+}
+
+publishing {
+ publications.all {
+ artifact javadocsJar
+
+ pom {
+ description = ""
+ name = "${project.name}"
+ url = "https://git.inmo.dev:8322/PostsSystem/Core"
+
+ scm {
+ developerConnection = "scm:git:[fetch=]ssh://git@git.inmo.dev:8322/PostsSystem/Core.git[push=]ssh://git@git.inmo.dev:8322/PostsSystem/Core.git"
+ url = "ssh://git@git.inmo.dev:8322/PostsSystem/Core.git"
+ }
+
+ developers {
+
+ developer {
+ id = "InsanusMokrassar"
+ name = "Aleksei Ovsiannikov"
+ email = "ovsyannikov.alexey95@gmail.com"
+ }
+
+
+ developer {
+ id = "000Sanya"
+ name = "Syrov Aleksandr"
+ email = "000sanya.000sanya@gmail.com"
+ }
+
+ }
+
+ licenses {
+
+ license {
+ name = "Apache Software License 2.0"
+ url = "https://git.inmo.dev/InsanusMokrassar/MicroUtils_mirror/src/master/LICENSE"
+ }
+
+ }
+ }
+
+ repositories {
+ maven {
+ name = "bintray"
+ url = uri("https://api.bintray.com/maven/${project.hasProperty('BINTRAY_USER') ? project.property('BINTRAY_USER') : System.getenv('BINTRAY_USER')}/releaseMode/${project.name}/;publish=1;override=1")
+ credentials {
+ username = project.hasProperty('BINTRAY_USER') ? project.property('BINTRAY_USER') : System.getenv('BINTRAY_USER')
+ password = project.hasProperty('BINTRAY_KEY') ? project.property('BINTRAY_KEY') : System.getenv('BINTRAY_KEY')
+ }
+ }
+ }
+
+ }
+}
\ No newline at end of file
diff --git a/publishing/api/build.gradle b/publishing/api/build.gradle
index b62209b2..a046f8bd 100644
--- a/publishing/api/build.gradle
+++ b/publishing/api/build.gradle
@@ -1,40 +1,12 @@
-buildscript {
- repositories {
- mavenLocal()
- jcenter()
- mavenCentral()
- }
-
- dependencies {
- classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
- classpath "org.jetbrains.kotlin:kotlin-serialization:$kotlin_version"
- }
-}
-
plugins {
- id "org.jetbrains.kotlin.multiplatform" version "$kotlin_version"
- id "org.jetbrains.kotlin.plugin.serialization" version "$kotlin_version"
+ id "org.jetbrains.kotlin.multiplatform"
+ id "org.jetbrains.kotlin.plugin.serialization"
+ id "com.android.library"
}
-project.version = "$core_version"
-project.group = "$group_name"
-
-apply from: "./publish.gradle"
-
-repositories {
- mavenLocal()
- jcenter()
- mavenCentral()
- maven { url "https://kotlin.bintray.com/kotlinx" }
-}
+apply from: "$mppProjectWithSerializationPresetPath"
kotlin {
- jvm()
- js (BOTH) {
- browser()
- nodejs()
- }
-
sourceSets {
commonMain {
dependencies {
@@ -43,33 +15,6 @@ kotlin {
api project(":postssystem.core.api")
}
}
- commonTest {
- dependencies {
- implementation kotlin('test-common')
- implementation kotlin('test-annotations-common')
- }
- }
- jvmMain {
- dependencies {
- implementation kotlin('stdlib-jdk8')
- }
- }
- jvmTest {
- dependencies {
- implementation kotlin('test-junit')
- }
- }
- jsMain {
- dependencies {
- implementation kotlin('stdlib-js')
- }
- }
- jsTest {
- dependencies {
- implementation kotlin('test-js')
- implementation kotlin('test-junit')
- }
- }
}
}
diff --git a/publishing/api/src/main/AndroidManifest.xml b/publishing/api/src/main/AndroidManifest.xml
new file mode 100644
index 00000000..a923875e
--- /dev/null
+++ b/publishing/api/src/main/AndroidManifest.xml
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/publishing/exposed/build.gradle b/publishing/exposed/build.gradle
index 70a98131..24ab9cd6 100644
--- a/publishing/exposed/build.gradle
+++ b/publishing/exposed/build.gradle
@@ -1,42 +1,26 @@
-buildscript {
- repositories {
- mavenLocal()
- jcenter()
- mavenCentral()
- }
-
- dependencies {
- classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
- classpath "org.jetbrains.kotlin:kotlin-serialization:$kotlin_version"
- }
-}
-
plugins {
- id "org.jetbrains.kotlin.plugin.serialization" version "$kotlin_version"
+ id "org.jetbrains.kotlin.multiplatform"
+ id "org.jetbrains.kotlin.plugin.serialization"
}
-project.version = "$core_version"
-project.group = "$group_name"
+apply from: "$mppJavaProjectPresetPath"
-apply plugin: "java-library"
-apply plugin: "kotlin"
-apply from: "./publish.gradle"
+kotlin {
+ sourceSets {
+ commonMain {
+ dependencies {
+ implementation kotlin('stdlib')
+ api "dev.inmo:micro_utils.repos.exposed:$microutils_version"
-repositories {
- mavenLocal()
- jcenter()
- mavenCentral()
- maven { url "https://kotlin.bintray.com/kotlinx" }
-}
-
-dependencies {
- implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
-
- api "dev.inmo:micro_utils.repos.exposed:$microutils_version"
-
- api project(":postssystem.publishing.api")
-
- testImplementation "org.xerial:sqlite-jdbc:$test_sqlite_version"
- testImplementation "org.jetbrains.kotlin:kotlin-test"
- testImplementation "org.jetbrains.kotlin:kotlin-test-junit"
+ api project(":postssystem.publishing.api")
+ }
+ }
+ jvmMain {
+ dependencies {
+ implementation "org.xerial:sqlite-jdbc:$test_sqlite_version"
+ implementation "org.jetbrains.kotlin:kotlin-test"
+ implementation "org.jetbrains.kotlin:kotlin-test-junit"
+ }
+ }
+ }
}
diff --git a/publishing/exposed/src/main/kotlin/dev/inmo/postssystem/core/publishing/exposed/ExposedPublishingKeysRepo.kt b/publishing/exposed/src/jvmMain/kotlin/dev/inmo/postssystem/core/publishing/exposed/ExposedPublishingKeysRepo.kt
similarity index 100%
rename from publishing/exposed/src/main/kotlin/dev/inmo/postssystem/core/publishing/exposed/ExposedPublishingKeysRepo.kt
rename to publishing/exposed/src/jvmMain/kotlin/dev/inmo/postssystem/core/publishing/exposed/ExposedPublishingKeysRepo.kt
diff --git a/publishing/ktor/client/build.gradle b/publishing/ktor/client/build.gradle
index ffb9e200..967b7c80 100644
--- a/publishing/ktor/client/build.gradle
+++ b/publishing/ktor/client/build.gradle
@@ -1,38 +1,12 @@
-buildscript {
- repositories {
- mavenLocal()
- jcenter()
- mavenCentral()
- }
-
- dependencies {
- classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
- classpath "org.jetbrains.kotlin:kotlin-serialization:$kotlin_version"
- }
-}
-
plugins {
- id "org.jetbrains.kotlin.multiplatform" version "$kotlin_version"
- id "org.jetbrains.kotlin.plugin.serialization" version "$kotlin_version"
+ id "org.jetbrains.kotlin.multiplatform"
+ id "org.jetbrains.kotlin.plugin.serialization"
+ id "com.android.library"
}
-project.version = "$core_version"
-project.group = "$group_name"
-
-repositories {
- mavenLocal()
- jcenter()
- mavenCentral()
- maven { url "https://kotlin.bintray.com/kotlinx" }
-}
+apply from: "$mppProjectWithSerializationPresetPath"
kotlin {
- jvm()
- js (BOTH) {
- browser()
- nodejs()
- }
-
sourceSets {
commonMain {
dependencies {
@@ -43,32 +17,5 @@ kotlin {
api project(":postssystem.publishing.ktor.common")
}
}
- commonTest {
- dependencies {
- implementation kotlin('test-common')
- implementation kotlin('test-annotations-common')
- }
- }
- jvmMain {
- dependencies {
- implementation kotlin('stdlib-jdk8')
- }
- }
- jvmTest {
- dependencies {
- implementation kotlin('test-junit')
- }
- }
- jsMain {
- dependencies {
- implementation kotlin('stdlib-js')
- }
- }
- jsTest {
- dependencies {
- implementation kotlin('test-js')
- implementation kotlin('test-junit')
- }
- }
}
}
diff --git a/publishing/ktor/client/src/main/AndroidManifest.xml b/publishing/ktor/client/src/main/AndroidManifest.xml
new file mode 100644
index 00000000..47ff02ac
--- /dev/null
+++ b/publishing/ktor/client/src/main/AndroidManifest.xml
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/publishing/ktor/common/build.gradle b/publishing/ktor/common/build.gradle
index 586d49d5..7137dfd0 100644
--- a/publishing/ktor/common/build.gradle
+++ b/publishing/ktor/common/build.gradle
@@ -1,64 +1,19 @@
-buildscript {
- repositories {
- mavenLocal()
- jcenter()
- mavenCentral()
- }
-
- dependencies {
- classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
- classpath "org.jetbrains.kotlin:kotlin-serialization:$kotlin_version"
- }
-}
-
plugins {
- id "org.jetbrains.kotlin.multiplatform" version "$kotlin_version"
- id "org.jetbrains.kotlin.plugin.serialization" version "$kotlin_version"
+ id "org.jetbrains.kotlin.multiplatform"
+ id "org.jetbrains.kotlin.plugin.serialization"
+ id "com.android.library"
}
-project.version = "$core_version"
-project.group = "$group_name"
-
-repositories {
- mavenLocal()
- jcenter()
- mavenCentral()
- maven { url "https://kotlin.bintray.com/kotlinx" }
-}
+apply from: "$mppProjectWithSerializationPresetPath"
kotlin {
- jvm()
- js (BOTH) {
- browser()
- nodejs()
- }
-
sourceSets {
commonMain {
dependencies {
- implementation kotlin('stdlib')
-
api "dev.inmo:micro_utils.ktor.common:$microutils_version"
api project(":postssystem.publishing.api")
}
}
- commonTest {
- dependencies {
- implementation kotlin('test-common')
- implementation kotlin('test-annotations-common')
- }
- }
- jvmTest {
- dependencies {
- implementation kotlin('test-junit')
- }
- }
- jsTest {
- dependencies {
- implementation kotlin('test-js')
- implementation kotlin('test-junit')
- }
- }
}
}
diff --git a/publishing/ktor/common/src/main/AndroidManifest.xml b/publishing/ktor/common/src/main/AndroidManifest.xml
new file mode 100644
index 00000000..d52bf584
--- /dev/null
+++ b/publishing/ktor/common/src/main/AndroidManifest.xml
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/publishing/ktor/server/build.gradle b/publishing/ktor/server/build.gradle
index 5d317958..3dae25cf 100644
--- a/publishing/ktor/server/build.gradle
+++ b/publishing/ktor/server/build.gradle
@@ -1,41 +1,26 @@
-buildscript {
- repositories {
- mavenLocal()
- jcenter()
- mavenCentral()
- }
-
- dependencies {
- classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
- classpath "org.jetbrains.kotlin:kotlin-serialization:$kotlin_version"
- }
-}
-
plugins {
- id "org.jetbrains.kotlin.plugin.serialization" version "$kotlin_version"
+ id "org.jetbrains.kotlin.multiplatform"
+ id "org.jetbrains.kotlin.plugin.serialization"
}
-project.version = "$core_version"
-project.group = "$group_name"
+apply from: "$mppJavaProjectPresetPath"
-apply plugin: "java-library"
-apply plugin: "kotlin"
+kotlin {
+ sourceSets {
+ commonMain {
+ dependencies {
+ api "dev.inmo:micro_utils.ktor.server:$microutils_version"
-repositories {
- mavenLocal()
- jcenter()
- mavenCentral()
- maven { url "https://kotlin.bintray.com/kotlinx" }
-}
-
-dependencies {
- implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
-
- api "dev.inmo:micro_utils.ktor.server:$microutils_version"
-
- api project(":postssystem.publishing.ktor.common")
-
- testImplementation "org.xerial:sqlite-jdbc:$test_sqlite_version"
- testImplementation "org.jetbrains.kotlin:kotlin-test"
- testImplementation "org.jetbrains.kotlin:kotlin-test-junit"
+ api project(":postssystem.publishing.ktor.common")
+ }
+ }
+
+ jvmTest {
+ dependencies {
+ implementation "org.xerial:sqlite-jdbc:$test_sqlite_version"
+ implementation "org.jetbrains.kotlin:kotlin-test"
+ implementation "org.jetbrains.kotlin:kotlin-test-junit"
+ }
+ }
+ }
}
diff --git a/publishing/ktor/server/src/main/kotlin/com/insanusmokrassar/postssystem/publishing/ktor/server/PublishingKeysRepoRoutingConfigurator.kt b/publishing/ktor/server/src/jvmMain/kotlin/com/insanusmokrassar/postssystem/publishing/ktor/server/PublishingKeysRepoRoutingConfigurator.kt
similarity index 100%
rename from publishing/ktor/server/src/main/kotlin/com/insanusmokrassar/postssystem/publishing/ktor/server/PublishingKeysRepoRoutingConfigurator.kt
rename to publishing/ktor/server/src/jvmMain/kotlin/com/insanusmokrassar/postssystem/publishing/ktor/server/PublishingKeysRepoRoutingConfigurator.kt
diff --git a/publishing/ktor/server/src/main/kotlin/com/insanusmokrassar/postssystem/publishing/ktor/server/ReadPublishingKeysRepoRoutingConfigurator.kt b/publishing/ktor/server/src/jvmMain/kotlin/com/insanusmokrassar/postssystem/publishing/ktor/server/ReadPublishingKeysRepoRoutingConfigurator.kt
similarity index 100%
rename from publishing/ktor/server/src/main/kotlin/com/insanusmokrassar/postssystem/publishing/ktor/server/ReadPublishingKeysRepoRoutingConfigurator.kt
rename to publishing/ktor/server/src/jvmMain/kotlin/com/insanusmokrassar/postssystem/publishing/ktor/server/ReadPublishingKeysRepoRoutingConfigurator.kt
diff --git a/publishing/ktor/server/src/main/kotlin/com/insanusmokrassar/postssystem/publishing/ktor/server/WritePublishingKeysRepoRoutingConfigurator.kt b/publishing/ktor/server/src/jvmMain/kotlin/com/insanusmokrassar/postssystem/publishing/ktor/server/WritePublishingKeysRepoRoutingConfigurator.kt
similarity index 100%
rename from publishing/ktor/server/src/main/kotlin/com/insanusmokrassar/postssystem/publishing/ktor/server/WritePublishingKeysRepoRoutingConfigurator.kt
rename to publishing/ktor/server/src/jvmMain/kotlin/com/insanusmokrassar/postssystem/publishing/ktor/server/WritePublishingKeysRepoRoutingConfigurator.kt
diff --git a/settings.gradle b/settings.gradle
index cbca3cf9..bf0b490e 100644
--- a/settings.gradle
+++ b/settings.gradle
@@ -3,7 +3,6 @@ rootProject.name='postssystem'
String[] includes = [
':core:api',
':core:exposed',
- ':core:ktor',
':core:ktor:common',
':core:ktor:client',
':core:ktor:server',