Skip to content

Commit 5b16f0d

Browse files
authored
add github actions for semver check (#4897)
* add github actions for semver check * update
1 parent f314ff7 commit 5b16f0d

File tree

3 files changed

+29
-2
lines changed

3 files changed

+29
-2
lines changed

.github/workflows/semver-check.yml

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
name: Semver Check
2+
3+
on:
4+
workflow_dispatch:
5+
pull_request:
6+
branches:
7+
- 'releases/**'
8+
9+
jobs:
10+
build-artifacts:
11+
runs-on: ubuntu-latest
12+
steps:
13+
- uses: actions/checkout@v3
14+
15+
- name: Perform gradle build
16+
run: |
17+
./gradlew semverCheckForRelease -PpublishConfigFilePath=release.cfg -PpublishMode=RELEASE

buildSrc/src/main/java/com/google/firebase/gradle/plugins/FirebaseLibraryPlugin.kt

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -96,11 +96,12 @@ class FirebaseLibraryPlugin : BaseFirebaseLibraryPlugin() {
9696
aarAndroidFile.value(true)
9797
filePath.value(project.file("semver/previous.aar").absolutePath)
9898
}
99-
99+
val artifact = firebaseLibrary.artifactId.get()
100+
val releaseAar = if (artifact.contains("-ktx")) "ktx-release.aar" else "${artifact}-release.aar"
100101
project.tasks.register<Copy>("extractCurrentClasses") {
101102
dependsOn("bundleReleaseAar")
102103

103-
from(project.zipTree("build/outputs/aar/${firebaseLibrary.artifactId.get()}-release.aar"))
104+
from(project.zipTree("build/outputs/aar/${releaseAar}"))
104105
into(project.file("semver/current-version"))
105106
}
106107
project.tasks.register<Copy>("extractPreviousClasses") {

buildSrc/src/main/java/com/google/firebase/gradle/plugins/publish/PublishingPlugin.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -143,6 +143,15 @@ public void apply(Project project) {
143143
.set("projectsToPublish", projectsToPublish);
144144

145145
Publisher publisher = new Publisher(publishMode, projectsToPublish);
146+
project
147+
.getTasks()
148+
.register(
149+
"semverCheckForRelease",
150+
t -> {
151+
for (FirebaseLibraryExtension toPublish : projectsToPublish) {
152+
t.dependsOn(toPublish.getPath() + ":semverCheck");
153+
}
154+
});
146155
project
147156
.getTasks()
148157
.create(

0 commit comments

Comments
 (0)