Skip to content

Commit 0d81317

Browse files
authored
Merge pull request #819 from square/rick/publish_convention
add a `published` convention plugin and enforce `-SNAPSHOT` versions in CI
2 parents d1c024c + 12e769e commit 0d81317

File tree

21 files changed

+50
-58
lines changed

21 files changed

+50
-58
lines changed

.buildscript/configure-maven-publish.gradle

Lines changed: 0 additions & 10 deletions
This file was deleted.

.github/workflows/kotlin.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@ jobs :
8080
gradle-dependencies-cache-key : |
8181
gradle/libs.versions.toml
8282
arguments : |
83-
check apiCheck artifactsCheck dependencyGuard lint ktlintCheck jvmWorkflowNodeBenchmarkJar --no-daemon --stacktrace --continue
83+
check apiCheck checkVersionIsSnapshot artifactsCheck dependencyGuard lint ktlintCheck jvmWorkflowNodeBenchmarkJar --no-daemon --stacktrace --continue
8484
concurrent : true
8585
gradle-build-scan-report : false
8686
gradle-distribution-sha-256-sum-warning : false

.github/workflows/publish-snapshot.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,9 @@ jobs:
2222
distribution: 'zulu'
2323
java-version: 11
2424

25+
- name : Check for -SNAPSHOT version
26+
run: ./gradlew checkVersionIsSnapshot --no-daemon
27+
2528
- name : Publish Snapshots
2629
run: |
2730
./gradlew clean build --no-daemon

buildSrc/build.gradle.kts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,12 @@ dependencies {
1616
compileOnly(gradleApi())
1717

1818
implementation(libs.android.gradle.plugin)
19+
implementation(libs.dokka.gradle.plugin)
1920
implementation(libs.dropbox.dependencyGuard)
2021
implementation(libs.kotlin.gradle.plugin)
2122
implementation(libs.squareup.moshi)
2223
implementation(libs.squareup.moshi.adapters)
24+
implementation(libs.vanniktech.publish)
2325

2426
ksp(libs.squareup.moshi.codegen)
2527
}
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
import com.android.build.gradle.TestedExtension
2+
import com.squareup.workflow1.library
3+
import com.squareup.workflow1.libsCatalog
4+
import com.vanniktech.maven.publish.SonatypeHost
5+
6+
plugins {
7+
id("org.jetbrains.dokka")
8+
id("com.vanniktech.maven.publish")
9+
// track all runtime classpath dependencies for anything we ship
10+
id("dependency-guard")
11+
}
12+
13+
group = project.property("GROUP") as String
14+
version = project.property("VERSION_NAME") as String
15+
16+
mavenPublish {
17+
sonatypeHost = SonatypeHost.S01
18+
}
19+
20+
tasks.register("checkVersionIsSnapshot") {
21+
doLast {
22+
val expected = "-SNAPSHOT"
23+
require((version as String).endsWith(expected)) {
24+
"The project's version name must be suffixed with `$expected` when checked in" +
25+
" to the main branch, but instead it's `$version`."
26+
}
27+
}
28+
}

internal-testing-utils/build.gradle.kts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
11
plugins {
22
`kotlin-jvm`
3+
published
34
}
45

5-
apply(from = rootProject.file(".buildscript/configure-maven-publish.gradle"))
6-
76
dependencies {
87
implementation(libs.kotlin.jdk8)
98

trace-encoder/build.gradle.kts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,9 @@
11
plugins {
22
`kotlin-jvm`
33
id("com.google.devtools.ksp")
4-
id("com.vanniktech.maven.publish")
4+
published
55
}
66

7-
apply(from = rootProject.file(".buildscript/configure-maven-publish.gradle"))
8-
97
dependencies {
108
compileOnly(libs.jetbrains.annotations)
119
compileOnly(libs.squareup.moshi.codegen)

workflow-config/config-android/build.gradle.kts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ plugins {
22
id("com.android.library")
33
`kotlin-android`
44
`android-defaults`
5-
id("org.jetbrains.dokka")
5+
published
66
}
77

88
android {
@@ -16,8 +16,6 @@ android {
1616
}
1717
}
1818

19-
apply(from = rootProject.file(".buildscript/configure-maven-publish.gradle"))
20-
2119
dependencies {
2220
api(project(":workflow-runtime"))
2321
}

workflow-config/config-jvm/build.gradle.kts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
plugins {
22
`java-library`
33
`kotlin-jvm`
4-
id("org.jetbrains.dokka")
4+
published
55
}
66

77
tasks.withType<Test> {
@@ -18,8 +18,6 @@ tasks.withType<Test> {
1818
}
1919
}
2020

21-
apply(from = rootProject.file(".buildscript/configure-maven-publish.gradle"))
22-
2321
dependencies {
2422
api(project(":workflow-runtime"))
2523
}

workflow-core/build.gradle.kts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,8 @@
11
plugins {
22
`kotlin-multiplatform`
3-
id("org.jetbrains.dokka")
3+
published
44
}
55

6-
apply(from = rootProject.file(".buildscript/configure-maven-publish.gradle"))
7-
86
kotlin {
97
jvm { withJava() }
108
ios()

workflow-runtime/build.gradle.kts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,10 @@ import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
33

44
plugins {
55
`kotlin-multiplatform`
6-
id("org.jetbrains.dokka")
6+
published
77
id("org.jetbrains.kotlinx.benchmark")
88
}
99

10-
apply(from = rootProject.file(".buildscript/configure-maven-publish.gradle"))
11-
1210
kotlin {
1311
jvm {
1412
compilations {

workflow-rx2/build.gradle.kts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,8 @@
11
plugins {
22
`kotlin-jvm`
3-
id("org.jetbrains.dokka")
3+
published
44
}
55

6-
apply(from = rootProject.file(".buildscript/configure-maven-publish.gradle"))
7-
86
dependencies {
97
compileOnly(libs.jetbrains.annotations)
108

workflow-testing/build.gradle.kts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
plugins {
44
`java-library`
55
`kotlin-jvm`
6-
id("org.jetbrains.dokka")
6+
published
77
}
88

99
tasks.withType<org.jetbrains.kotlin.gradle.tasks.KotlinCompile> {
@@ -20,8 +20,6 @@ tasks.withType<org.jetbrains.kotlin.gradle.tasks.KotlinCompile> {
2020
}
2121
}
2222

23-
apply(from = rootProject.file(".buildscript/configure-maven-publish.gradle"))
24-
2523
dependencies {
2624
compileOnly(libs.jetbrains.annotations)
2725

workflow-tracing/build.gradle.kts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,8 @@
11
plugins {
22
`kotlin-jvm`
3-
id("com.vanniktech.maven.publish")
3+
published
44
}
55

6-
apply(from = rootProject.file(".buildscript/configure-maven-publish.gradle"))
7-
86
dependencies {
97
compileOnly(libs.jetbrains.annotations)
108

workflow-ui/compose-tooling/build.gradle.kts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,9 @@ plugins {
55
`kotlin-android`
66
`android-defaults`
77
`android-ui-tests`
8-
id("org.jetbrains.dokka")
8+
published
99
}
1010

11-
apply(from = rootProject.file(".buildscript/configure-maven-publish.gradle"))
12-
1311
android {
1412
buildFeatures.compose = true
1513
composeOptions {

workflow-ui/compose/build.gradle.kts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,9 @@ plugins {
55
`kotlin-android`
66
`android-defaults`
77
`android-ui-tests`
8-
id("org.jetbrains.dokka")
8+
published
99
}
1010

11-
apply(from = rootProject.file(".buildscript/configure-maven-publish.gradle"))
12-
1311
android {
1412
buildFeatures.compose = true
1513
composeOptions {

workflow-ui/container-android/build.gradle.kts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,9 @@ plugins {
33
`kotlin-android`
44
`android-defaults`
55
`android-ui-tests`
6-
id("org.jetbrains.dokka")
6+
published
77
}
88

9-
apply(from = rootProject.file(".buildscript/configure-maven-publish.gradle"))
10-
119
dependencies {
1210
api(project(":workflow-core"))
1311
api(project(":workflow-ui:core-android"))

workflow-ui/container-common/build.gradle.kts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,8 @@
11
plugins {
22
`kotlin-jvm`
3-
id("org.jetbrains.dokka")
3+
published
44
}
55

6-
apply(from = rootProject.file(".buildscript/configure-maven-publish.gradle"))
7-
86
dependencies {
97
api(project(":workflow-ui:core-common"))
108
api(libs.kotlin.jdk6)

workflow-ui/core-android/build.gradle.kts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,9 @@ plugins {
33
`kotlin-android`
44
`android-defaults`
55
`android-ui-tests`
6-
id("org.jetbrains.dokka")
6+
published
77
}
88

9-
apply(from = rootProject.file(".buildscript/configure-maven-publish.gradle"))
10-
119
dependencies {
1210
compileOnly(libs.androidx.viewbinding)
1311

workflow-ui/core-common/build.gradle.kts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,8 @@
11
plugins {
22
`kotlin-jvm`
3-
id("org.jetbrains.dokka")
3+
published
44
}
55

6-
apply(from = rootProject.file(".buildscript/configure-maven-publish.gradle"))
7-
86
dependencies {
97
api(libs.kotlin.jdk6)
108
api(libs.squareup.okio)

workflow-ui/radiography/build.gradle.kts

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,9 @@ plugins {
33
`kotlin-android`
44
`android-defaults`
55
`android-ui-tests`
6-
id("org.jetbrains.dokka")
6+
published
77
}
88

9-
apply(from = rootProject.file(".buildscript/configure-maven-publish.gradle"))
10-
119
android {
1210
// See https://github.com/Kotlin/kotlinx.coroutines/issues/1064#issuecomment-479412940
1311
packagingOptions.exclude("**/*.kotlin_*")

0 commit comments

Comments
 (0)