Skip to content

Commit 7b5efb5

Browse files
authored
fix(java-firestore): preserve FirestoreAdminVersion.java during regeneration (#13415)
This is a followup fix for #13397. Fix an issue in java-firestore/owlbot.py in locating "google-cloud-firestore-admin" that prevented the replacement logic taking effect in FirestoreAdminStubSettings.java. Remove the custom `Version.java` to `FirestoreAdminVersion.java` renaming logic from owlbot.py. Instead, rely on excluding `Version.java` during the directory move (s.move) to discard the generated version file. `FirestoreAdminVersion.java` is added to the `keep` list in `librarian.yaml` to preserve. Tested regeneration locally with `go run github.com/googleapis/librarian/cmd/librarian@${V} generate firestore`
1 parent fb49fb8 commit 7b5efb5

4 files changed

Lines changed: 20 additions & 47 deletions

File tree

java-firestore/google-cloud-firestore-admin/src/main/java/com/google/cloud/firestore/v1/stub/FirestoreAdminStubSettings.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -757,7 +757,7 @@ protected LibraryMetadata getLibraryMetadata() {
757757
return LibraryMetadata.newBuilder()
758758
.setArtifactName("com.google.cloud:google-cloud-firestore")
759759
.setRepository("googleapis/google-cloud-java")
760-
.setVersion(Version.VERSION)
760+
.setVersion(FirestoreAdminVersion.VERSION)
761761
.build();
762762
}
763763

java-firestore/google-cloud-firestore-admin/src/main/java/com/google/cloud/firestore/v1/stub/Version.java

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

java-firestore/owlbot.py

Lines changed: 18 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@
3333
except Exception as e:
3434
print(f'Failed to update .repo-metadata.json: {e}')
3535

36+
# Loop 1: License header replacements
3637
for library in s.get_staging_dirs():
3738
# put any special-case replacements here
3839
service = 'firestore'
@@ -41,25 +42,23 @@
4142
service = 'firestore-admin'
4243
s.replace(f'owl-bot-staging/v1/grpc-google-cloud-{service}-{version}-java/src/**/*.java', bad_license_header, license_header)
4344
s.replace(f'owl-bot-staging/v1/proto-google-cloud-{service}-{version}-java/src/**/*.java', bad_license_header, license_header)
44-
if "firestore-admin" in str(library):
45-
s.move(library, excludes=["**/Version.java"])
46-
s.move(
47-
f"{library}/src/main/java/com/google/cloud/firestore/v1/stub/Version.java",
48-
"google-cloud-firestore-admin/src/main/java/com/google/cloud/firestore/v1/stub/FirestoreAdminVersion.java"
49-
)
50-
s.replace(
51-
"google-cloud-firestore-admin/src/main/java/com/google/cloud/firestore/v1/stub/FirestoreAdminVersion.java",
52-
"class Version",
53-
"class FirestoreAdminVersion"
54-
)
55-
# Replace Version.VERSION with FirestoreAdminVersion.VERSION in stub files
56-
s.replace(
57-
"google-cloud-firestore-admin/src/main/java/com/google/cloud/firestore/v1/stub/**/*.java",
58-
"Version.VERSION",
59-
"FirestoreAdminVersion.VERSION",
60-
)
61-
else:
62-
s.move(library)
45+
46+
# Loop 2: Move libraries and handle special cases
47+
for version_dir in s.get_staging_dirs():
48+
for library in version_dir.iterdir():
49+
if not library.is_dir():
50+
continue
51+
if library.name == "google-cloud-firestore-admin":
52+
s.move(library, excludes=["**/Version.java"])
53+
# Replace Version.VERSION with FirestoreAdminVersion.VERSION in stub files
54+
s.replace(
55+
"google-cloud-firestore-admin/src/main/java/com/google/cloud/firestore/v1/stub/FirestoreAdminStubSettings.java",
56+
"Version.VERSION",
57+
"FirestoreAdminVersion.VERSION",
58+
)
59+
else:
60+
s.move(library)
61+
6362
s.remove_staging_dirs()
6463
java.common_templates(
6564
monorepo=True,

librarian.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1755,6 +1755,7 @@ libraries:
17551755
keep:
17561756
- google-cloud-firestore/src/main/resources/META-INF/native-image/com.google.cloud/google-cloud-firestore/reflect-config.json
17571757
- google-cloud-firestore/src/test/resources/META-INF/native-image/reflect-config.json
1758+
- google-cloud-firestore-admin/src/main/java/com/google/cloud/firestore/v1/stub/FirestoreAdminVersion.java
17581759
- proto-google-cloud-firestore-admin-v1/src/main/java/com/google/firestore/admin/v1/ParentName.java
17591760
- proto-google-cloud-firestore-v1/src/main/java/com/google/firestore/v1/AnyPathName.java
17601761
- proto-google-cloud-firestore-v1/src/main/java/com/google/firestore/v1/DatabaseRootName.java

0 commit comments

Comments
 (0)