Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: prepare to generate grafeas #2761

Merged
merged 11 commits into from
May 13, 2024
Merged

fix: prepare to generate grafeas #2761

merged 11 commits into from
May 13, 2024

Conversation

JoeWang1127
Copy link
Collaborator

@JoeWang1127 JoeWang1127 commented May 9, 2024

In this PR:

  • Add suffix to sample source folder
  • Add unit tests

Context:

  • The package name of grafeas is io.grafeas.v1 which is not starts with com. When copying samples to destination directory, we need to change the suffix of source directory.
  • grafeas doesn't have a valid api_id (empty string). Before this change, the api_id will be populated as {library.api_shortname}.googleapis.com, which is not correct. api_id should not be populated to .repo-metadata.json if set to empty string.

With the library entry added in generation configuration:

- api_shortname: containeranalysis
  name_pretty: Grafeas
  product_documentation: https://grafeas.io
  api_description: n/a
  client_documentation: "https://cloud.google.com/java/docs/reference/grafeas/latest/overview"
  release_level: stable
  distribution_name: "io.grafeas:grafeas"
  api_id: ""
  codeowner_team: "@googleapis/aap-dpes"
  library_name: grafeas
  requires_billing: false
  GAPICs:
  - proto_path: grafeas/v1

The generated java-grafeas is in googleapis/google-cloud-java#10820

@product-auto-label product-auto-label bot added the size: s Pull request size is small. label May 9, 2024
@product-auto-label product-auto-label bot added size: m Pull request size is medium. and removed size: s Pull request size is small. labels May 9, 2024
@JoeWang1127 JoeWang1127 changed the title feat: generate grafeas fix: add sample suffix May 9, 2024
@JoeWang1127 JoeWang1127 changed the title fix: add sample suffix fix: prepare to generate grafeas May 10, 2024
@JoeWang1127 JoeWang1127 marked this pull request as ready for review May 10, 2024 00:29
@JoeWang1127 JoeWang1127 requested a review from a team as a code owner May 10, 2024 00:29
@JoeWang1127 JoeWang1127 added the owlbot:run Add this label to trigger the Owlbot post processor. label May 10, 2024
@gcf-owl-bot gcf-owl-bot bot removed the owlbot:run Add this label to trigger the Owlbot post processor. label May 10, 2024
api_id = (
library.api_id if library.api_id else f"{library.api_shortname}.googleapis.com"
)
if library.api_id == EMPTY_API_ID:
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for fixing this empty api_id issue! However, I think it was a mistake to have an empty api_id in repo-metadata.json, as it is specified in the service yaml. I created a PR to fix it.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, I didn't notice the api_id should not be empty.

I'll revert this change.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done.

@@ -224,7 +224,11 @@ if [[ "${proto_only}" == "false" ]]; then
mv_src_files "gapic" "test" "${temp_destination_path}"
if [ "${include_samples}" == "true" ]; then
# move java_gapic_srcjar/samples/snippets to samples/snippets
mv_src_files "samples" "main" "${temp_destination_path}"
if [[ "${proto_path}" == "grafeas/v1" ]]; then
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Shall we just skip generating samples for grafeas as they are currently not included in the repo?

Copy link
Collaborator Author

@JoeWang1127 JoeWang1127 May 11, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we should generate samples so that the logic is same as other libraries.

I refactored the code to remove this special case and included unit tests.

Copy link

Quality Gate Passed Quality Gate passed for 'gapic-generator-java-root'

Issues
0 New issues
0 Accepted issues

Measures
0 Security Hotspots
No data about Coverage
No data about Duplication

See analysis details on SonarCloud

@JoeWang1127 JoeWang1127 requested a review from blakeli0 May 11, 2024 17:58
Copy link

Quality Gate Passed Quality Gate passed for 'java_showcase_integration_tests'

Issues
0 New issues
0 Accepted issues

Measures
0 Security Hotspots
No data about Coverage
No data about Duplication

See analysis details on SonarCloud

Copy link
Collaborator

@blakeli0 blakeli0 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. Please update description to reflect the latest change.

@JoeWang1127 JoeWang1127 merged commit 1114f18 into main May 13, 2024
34 checks passed
@JoeWang1127 JoeWang1127 deleted the fix/generate-grafeas branch May 13, 2024 20:25
JoeWang1127 added a commit that referenced this pull request May 16, 2024
🤖 I have created a release *beep* *boop*
---


<details><summary>2.40.1</summary>

##
[2.40.1](v2.40.0...v2.40.1)
(2024-05-15)


### Bug Fixes

* [common-protos] An existing method `UpdateVehicleLocation` is
([7f96074](7f96074))
* [common-protos] An existing method `UpdateVehicleLocation` is removed
from service `VehicleService`
([#2751](#2751))
([7f96074](7f96074))
* [iam] An existing method `UpdateVehicleLocation` is removed from
([4a1ae7b](4a1ae7b))
* [iam] An existing method `UpdateVehicleLocation` is removed from
service `VehicleService`
([#2752](#2752))
([4a1ae7b](4a1ae7b))
* do not populate repo level change while removing library
([#2740](#2740))
([43e62b9](43e62b9))
* only append `.api.grpc` suffix to group id if the artifact id starts
with `proto-` or `grpc-`
([#2731](#2731))
([8e87b2e](8e87b2e))
* opentelemetry-bom to be in third-party-dependencies BOM
([#2736](#2736))
([4ecc89b](4ecc89b))
* prepare to generate grafeas
([#2761](#2761))
([1114f18](1114f18))
* Replace deprecated protobuf methods.
([#2764](#2764))
([986c090](986c090))


### Dependencies

* update dependency black to v24.4.2
([#2660](#2660))
([1cbb681](1cbb681))
* update dependency com.fasterxml.jackson:jackson-bom to v2.17.1
([#2732](#2732))
([891b01d](891b01d))
* update dependency com.google.cloud:grpc-gcp to v1.6.0
([#2767](#2767))
([a39aa07](a39aa07))
* update dependency com.google.errorprone:error_prone_annotations to
v2.27.1
([#2708](#2708))
([4d7d246](4d7d246))
* update dependency com.google.errorprone:error_prone_annotations to
v2.27.1
([#2709](#2709))
([4e31d7d](4e31d7d))
* update dependency com.google.oauth-client:google-oauth-client-bom to
v1.36.0
([#2768](#2768))
([22b7398](22b7398))
* update dependency commons-codec:commons-codec to v1.17.0
([#2710](#2710))
([b87356c](b87356c))
* update dependency jinja2 to v3.1.4 [security]
([#2742](#2742))
([d67eaf8](d67eaf8))
* update dependency lxml to v5.2.2
([#2766](#2766))
([df7e211](df7e211))
* update dependency markupsafe to v2.1.5
([#2657](#2657))
([805baf8](805baf8))
* update dependency net.bytebuddy:byte-buddy to v1.14.15
([#2753](#2753))
([a472620](a472620))
* update dependency platformdirs to v4.2.1
([#2662](#2662))
([dbdcc91](dbdcc91))
* update googleapis/java-cloud-bom digest to db4265f
([#2755](#2755))
([908db6f](908db6f))
* update googleapis/java-cloud-bom digest to f3c611a
([#2700](#2700))
([d254e9b](d254e9b))
* update opentelemetry-java monorepo to v1.38.0
([#2769](#2769))
([0a5c7c4](0a5c7c4))
</details>

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
Co-authored-by: Joe Wang <[email protected]>
lqiu96 pushed a commit that referenced this pull request May 16, 2024
🤖 I have created a release *beep* *boop*
---


<details><summary>2.40.1</summary>

##
[2.40.1](v2.40.0...v2.40.1)
(2024-05-15)


### Bug Fixes

* [common-protos] An existing method `UpdateVehicleLocation` is
([7f96074](7f96074))
* [common-protos] An existing method `UpdateVehicleLocation` is removed
from service `VehicleService`
([#2751](#2751))
([7f96074](7f96074))
* [iam] An existing method `UpdateVehicleLocation` is removed from
([4a1ae7b](4a1ae7b))
* [iam] An existing method `UpdateVehicleLocation` is removed from
service `VehicleService`
([#2752](#2752))
([4a1ae7b](4a1ae7b))
* do not populate repo level change while removing library
([#2740](#2740))
([43e62b9](43e62b9))
* only append `.api.grpc` suffix to group id if the artifact id starts
with `proto-` or `grpc-`
([#2731](#2731))
([8e87b2e](8e87b2e))
* opentelemetry-bom to be in third-party-dependencies BOM
([#2736](#2736))
([4ecc89b](4ecc89b))
* prepare to generate grafeas
([#2761](#2761))
([1114f18](1114f18))
* Replace deprecated protobuf methods.
([#2764](#2764))
([986c090](986c090))


### Dependencies

* update dependency black to v24.4.2
([#2660](#2660))
([1cbb681](1cbb681))
* update dependency com.fasterxml.jackson:jackson-bom to v2.17.1
([#2732](#2732))
([891b01d](891b01d))
* update dependency com.google.cloud:grpc-gcp to v1.6.0
([#2767](#2767))
([a39aa07](a39aa07))
* update dependency com.google.errorprone:error_prone_annotations to
v2.27.1
([#2708](#2708))
([4d7d246](4d7d246))
* update dependency com.google.errorprone:error_prone_annotations to
v2.27.1
([#2709](#2709))
([4e31d7d](4e31d7d))
* update dependency com.google.oauth-client:google-oauth-client-bom to
v1.36.0
([#2768](#2768))
([22b7398](22b7398))
* update dependency commons-codec:commons-codec to v1.17.0
([#2710](#2710))
([b87356c](b87356c))
* update dependency jinja2 to v3.1.4 [security]
([#2742](#2742))
([d67eaf8](d67eaf8))
* update dependency lxml to v5.2.2
([#2766](#2766))
([df7e211](df7e211))
* update dependency markupsafe to v2.1.5
([#2657](#2657))
([805baf8](805baf8))
* update dependency net.bytebuddy:byte-buddy to v1.14.15
([#2753](#2753))
([a472620](a472620))
* update dependency platformdirs to v4.2.1
([#2662](#2662))
([dbdcc91](dbdcc91))
* update googleapis/java-cloud-bom digest to db4265f
([#2755](#2755))
([908db6f](908db6f))
* update googleapis/java-cloud-bom digest to f3c611a
([#2700](#2700))
([d254e9b](d254e9b))
* update opentelemetry-java monorepo to v1.38.0
([#2769](#2769))
([0a5c7c4](0a5c7c4))
</details>

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
Co-authored-by: Joe Wang <[email protected]>
lqiu96 pushed a commit that referenced this pull request May 22, 2024
In this PR:
- Add suffix to sample source folder
- Add unit tests

Context:
- The package name of grafeas is `io.grafeas.v1` which is not starts
with `com`. When copying samples to destination directory, we need to
change the suffix of source directory.
- grafeas doesn't have a valid api_id (empty string). Before this
change, the `api_id` will be populated as
`{library.api_shortname}.googleapis.com`, which is not correct. `api_id`
should not be populated to `.repo-metadata.json` if set to empty string.

With the library entry added in generation configuration:
```
- api_shortname: containeranalysis
  name_pretty: Grafeas
  product_documentation: https://grafeas.io
  api_description: n/a
  client_documentation: "https://cloud.google.com/java/docs/reference/grafeas/latest/overview"
  release_level: stable
  distribution_name: "io.grafeas:grafeas"
  api_id: ""
  codeowner_team: "@googleapis/aap-dpes"
  library_name: grafeas
  requires_billing: false
  GAPICs:
  - proto_path: grafeas/v1
 ```

The generated java-grafeas is in googleapis/google-cloud-java#10820
lqiu96 pushed a commit that referenced this pull request May 22, 2024
🤖 I have created a release *beep* *boop*
---


<details><summary>2.40.1</summary>

##
[2.40.1](v2.40.0...v2.40.1)
(2024-05-15)


### Bug Fixes

* [common-protos] An existing method `UpdateVehicleLocation` is
([7f96074](7f96074))
* [common-protos] An existing method `UpdateVehicleLocation` is removed
from service `VehicleService`
([#2751](#2751))
([7f96074](7f96074))
* [iam] An existing method `UpdateVehicleLocation` is removed from
([4a1ae7b](4a1ae7b))
* [iam] An existing method `UpdateVehicleLocation` is removed from
service `VehicleService`
([#2752](#2752))
([4a1ae7b](4a1ae7b))
* do not populate repo level change while removing library
([#2740](#2740))
([43e62b9](43e62b9))
* only append `.api.grpc` suffix to group id if the artifact id starts
with `proto-` or `grpc-`
([#2731](#2731))
([8e87b2e](8e87b2e))
* opentelemetry-bom to be in third-party-dependencies BOM
([#2736](#2736))
([4ecc89b](4ecc89b))
* prepare to generate grafeas
([#2761](#2761))
([1114f18](1114f18))
* Replace deprecated protobuf methods.
([#2764](#2764))
([986c090](986c090))


### Dependencies

* update dependency black to v24.4.2
([#2660](#2660))
([1cbb681](1cbb681))
* update dependency com.fasterxml.jackson:jackson-bom to v2.17.1
([#2732](#2732))
([891b01d](891b01d))
* update dependency com.google.cloud:grpc-gcp to v1.6.0
([#2767](#2767))
([a39aa07](a39aa07))
* update dependency com.google.errorprone:error_prone_annotations to
v2.27.1
([#2708](#2708))
([4d7d246](4d7d246))
* update dependency com.google.errorprone:error_prone_annotations to
v2.27.1
([#2709](#2709))
([4e31d7d](4e31d7d))
* update dependency com.google.oauth-client:google-oauth-client-bom to
v1.36.0
([#2768](#2768))
([22b7398](22b7398))
* update dependency commons-codec:commons-codec to v1.17.0
([#2710](#2710))
([b87356c](b87356c))
* update dependency jinja2 to v3.1.4 [security]
([#2742](#2742))
([d67eaf8](d67eaf8))
* update dependency lxml to v5.2.2
([#2766](#2766))
([df7e211](df7e211))
* update dependency markupsafe to v2.1.5
([#2657](#2657))
([805baf8](805baf8))
* update dependency net.bytebuddy:byte-buddy to v1.14.15
([#2753](#2753))
([a472620](a472620))
* update dependency platformdirs to v4.2.1
([#2662](#2662))
([dbdcc91](dbdcc91))
* update googleapis/java-cloud-bom digest to db4265f
([#2755](#2755))
([908db6f](908db6f))
* update googleapis/java-cloud-bom digest to f3c611a
([#2700](#2700))
([d254e9b](d254e9b))
* update opentelemetry-java monorepo to v1.38.0
([#2769](#2769))
([0a5c7c4](0a5c7c4))
</details>

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: release-please[bot] <55107282+release-please[bot]@users.noreply.github.com>
Co-authored-by: Joe Wang <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
size: m Pull request size is medium.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants