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: restore omit-snippets for bazel #1278

Merged
merged 2 commits into from
Mar 31, 2023

Conversation

quartzmo
Copy link
Member

  • Rename snippet files to *.go.txt to avoid bazel compilation.
  • Package snippets in *_go_gapic_srcjar-snippets.srcjar in go_gapic.bzl.

* Rename snippet files to *.go.txt to avoid bazel compilation.
* Package snippets in *_go_gapic_srcjar-snippets.srcjar in go_gapic.bzl.
@quartzmo quartzmo requested review from a team as code owners March 30, 2023 20:15
Copy link
Collaborator

@noahdietz noahdietz left a comment

Choose a reason for hiding this comment

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

This looks good! A couple of questions:

  1. Just want to double check that changing them to a .txt file is OK? I guess they are aonly supposed to be published on the cloudsite anyways
  2. Have you tested this in googleapis yet?

@quartzmo
Copy link
Member Author

quartzmo commented Mar 30, 2023

Just want to double check that changing them to a .txt file is OK? I guess they are only supposed to be published on the cloudsite anyways

This is the best solution I could think of. The postprocessor in google-cloud-go will have to rename the files to .go.

Have you tested this in googleapis yet?

Yes. It would have been very difficult to develop otherwise!

googleapis output
➜  googleapis git:(master) ✗ bazelisk build //google/cloud/asset/v1:asset_go_gapic --sandbox_debug
INFO: Analyzed target //google/cloud/asset/v1:asset_go_gapic (17 packages loaded, 235 targets configured).
INFO: Found 1 target...
INFO: From @//google/cloud/asset/v1:asset_go_gapic_srcjar_raw: `bazel-out/darwin-opt-exec-2B5CBBC6/bin/external/com_google_protobuf/protoc --experimental_allow_proto3_optional --plugin=protoc-gen-go_gapic=bazel-out/darwin-opt-exec-2B5CBBC6/bin/external/com_googleapis_gapic_generator_go/cmd/protoc-gen-go_gapic/protoc-gen-go_gapic_/protoc-gen-go_gapic --go_gapic_out=go-gapic-package=cloud.google.com/go/asset/apiv1;asset,transport=grpc+rest,release-level=ga,rest-numeric-enums,grpc-service-config=google/cloud/asset/v1/cloudasset_grpc_service_config.json,api-service-config=google/cloud/asset/v1/cloudasset_v1.yaml:bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar_raw.srcjar.zip -Igoogle/cloud/asset/v1/asset_service.proto=google/cloud/asset/v1/asset_service.proto -Igoogle/cloud/asset/v1/assets.proto=google/cloud/asset/v1/assets.proto -Igoogle/api/annotations.proto=google/api/annotations.proto -Igoogle/api/http.proto=google/api/http.proto -Igoogle/protobuf/descriptor.proto=bazel-out/darwin-fastbuild/bin/external/com_google_protobuf/_virtual_imports/descriptor_proto/google/protobuf/descriptor.proto -Igoogle/api/client.proto=google/api/client.proto -Igoogle/api/launch_stage.proto=google/api/launch_stage.proto -Igoogle/protobuf/duration.proto=bazel-out/darwin-fastbuild/bin/external/com_google_protobuf/_virtual_imports/duration_proto/google/protobuf/duration.proto -Igoogle/api/field_behavior.proto=google/api/field_behavior.proto -Igoogle/api/resource.proto=google/api/resource.proto -Igoogle/cloud/orgpolicy/v1/orgpolicy.proto=google/cloud/orgpolicy/v1/orgpolicy.proto -Igoogle/protobuf/empty.proto=bazel-out/darwin-fastbuild/bin/external/com_google_protobuf/_virtual_imports/empty_proto/google/protobuf/empty.proto -Igoogle/protobuf/timestamp.proto=bazel-out/darwin-fastbuild/bin/external/com_google_protobuf/_virtual_imports/timestamp_proto/google/protobuf/timestamp.proto -Igoogle/cloud/osconfig/v1/inventory.proto=google/cloud/osconfig/v1/inventory.proto -Igoogle/cloud/osconfig/v1/os_policy.proto=google/cloud/osconfig/v1/os_policy.proto -Igoogle/cloud/osconfig/v1/os_policy_assignment_reports.proto=google/cloud/osconfig/v1/os_policy_assignment_reports.proto -Igoogle/cloud/osconfig/v1/os_policy_assignments.proto=google/cloud/osconfig/v1/os_policy_assignments.proto -Igoogle/cloud/osconfig/v1/osconfig_common.proto=google/cloud/osconfig/v1/osconfig_common.proto -Igoogle/cloud/osconfig/v1/osconfig_service.proto=google/cloud/osconfig/v1/osconfig_service.proto -Igoogle/cloud/osconfig/v1/osconfig_zonal_service.proto=google/cloud/osconfig/v1/osconfig_zonal_service.proto -Igoogle/cloud/osconfig/v1/patch_deployments.proto=google/cloud/osconfig/v1/patch_deployments.proto -Igoogle/cloud/osconfig/v1/patch_jobs.proto=google/cloud/osconfig/v1/patch_jobs.proto -Igoogle/cloud/osconfig/v1/vulnerability.proto=google/cloud/osconfig/v1/vulnerability.proto -Igoogle/longrunning/operations.proto=google/longrunning/operations.proto -Igoogle/rpc/status.proto=google/rpc/status.proto -Igoogle/protobuf/any.proto=bazel-out/darwin-fastbuild/bin/external/com_google_protobuf/_virtual_imports/any_proto/google/protobuf/any.proto -Igoogle/type/date.proto=google/type/date.proto -Igoogle/type/datetime.proto=google/type/datetime.proto -Igoogle/type/dayofweek.proto=google/type/dayofweek.proto -Igoogle/type/timeofday.proto=google/type/timeofday.proto -Igoogle/protobuf/field_mask.proto=bazel-out/darwin-fastbuild/bin/external/com_google_protobuf/_virtual_imports/field_mask_proto/google/protobuf/field_mask.proto -Igoogle/iam/v1/policy.proto=google/iam/v1/policy.proto -Igoogle/type/expr.proto=google/type/expr.proto -Igoogle/identity/accesscontextmanager/v1/access_context_manager.proto=google/identity/accesscontextmanager/v1/access_context_manager.proto -Igoogle/identity/accesscontextmanager/v1/access_level.proto=google/identity/accesscontextmanager/v1/access_level.proto -Igoogle/identity/accesscontextmanager/v1/access_policy.proto=google/identity/accesscontextmanager/v1/access_policy.proto -Igoogle/identity/accesscontextmanager/v1/gcp_user_access_binding.proto=google/identity/accesscontextmanager/v1/gcp_user_access_binding.proto -Igoogle/identity/accesscontextmanager/v1/service_perimeter.proto=google/identity/accesscontextmanager/v1/service_perimeter.proto -Igoogle/iam/v1/iam_policy.proto=google/iam/v1/iam_policy.proto -Igoogle/iam/v1/options.proto=google/iam/v1/options.proto -Igoogle/identity/accesscontextmanager/type/device_resources.proto=google/identity/accesscontextmanager/type/device_resources.proto -Igoogle/rpc/code.proto=google/rpc/code.proto -Igoogle/protobuf/struct.proto=bazel-out/darwin-fastbuild/bin/external/com_google_protobuf/_virtual_imports/struct_proto/google/protobuf/struct.proto -Igoogle/cloud/common_resources.proto=google/cloud/common_resources.proto google/cloud/asset/v1/asset_service.proto google/cloud/asset/v1/assets.proto google/cloud/common_resources.proto`:
google/cloud/asset/v1/assets.proto:19:1: warning: Import google/api/field_behavior.proto is unused.
INFO: From Action google/cloud/asset/v1/asset_go_gapic_srcjar.srcjar:
bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar/cloud.google.com/go/asset/apiv1/asset_client.go
bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar/cloud.google.com/go/asset/apiv1/asset_client_example_test.go
bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar/cloud.google.com/go/asset/apiv1/doc.go
/private/var/tmp/_bazel_chrisdsmith/88a0b35d0376b755c9deb3d495f15b1e/sandbox/darwin-sandbox/802/execroot/com_google_googleapis /private/var/tmp/_bazel_chrisdsmith/88a0b35d0376b755c9deb3d495f15b1e/sandbox/darwin-sandbox/802/execroot/com_google_googleapis
/private/var/tmp/_bazel_chrisdsmith/88a0b35d0376b755c9deb3d495f15b1e/sandbox/darwin-sandbox/802/execroot/com_google_googleapis
Target //google/cloud/asset/v1:asset_go_gapic up-to-date:
  bazel-bin/google/cloud/asset/v1/asset_go_gapic.a
INFO: Elapsed time: 3.494s, Critical Path: 3.23s
INFO: 7 processes: 1 internal, 6 darwin-sandbox.
INFO: Build completed successfully, 7 total actions
➜  googleapis git:(master) ✗ unzip bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar_raw.srcjar
Archive:  bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar_raw.srcjar
replace cloud.google.com/go/asset/apiv1/asset_client.go? [y]es, [n]o, [A]ll, [N]one, [r]ename: A
 extracting: cloud.google.com/go/asset/apiv1/asset_client.go
 extracting: cloud.google.com/go/asset/apiv1/asset_client_example_test.go
 extracting: cloud.google.com/go/asset/apiv1/doc.go
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/AnalyzeIamPolicy/main.go.txt
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/AnalyzeIamPolicyLongrunning/main.go.txt
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/AnalyzeMove/main.go.txt
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/AnalyzeOrgPolicies/main.go.txt
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/AnalyzeOrgPolicyGovernedAssets/main.go.txt
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/AnalyzeOrgPolicyGovernedContainers/main.go.txt
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/BatchGetAssetsHistory/main.go.txt
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/BatchGetEffectiveIamPolicies/main.go.txt
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/CreateFeed/main.go.txt
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/CreateSavedQuery/main.go.txt
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/DeleteFeed/main.go.txt
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/DeleteSavedQuery/main.go.txt
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/ExportAssets/main.go.txt
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/GetFeed/main.go.txt
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/GetOperation/main.go.txt
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/GetSavedQuery/main.go.txt
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/ListAssets/main.go.txt
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/ListFeeds/main.go.txt
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/ListSavedQueries/main.go.txt
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/QueryAssets/main.go.txt
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/SearchAllIamPolicies/main.go.txt
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/SearchAllResources/main.go.txt
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/UpdateFeed/main.go.txt
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/UpdateSavedQuery/main.go.txt
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/snippet_metadata.google.cloud.asset.v1.json
➜  googleapis git:(master) ✗ unzip bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar.srcjar
Archive:  bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar.srcjar
replace cloud.google.com/go/asset/apiv1/doc.go? [y]es, [n]o, [A]ll, [N]one, [r]ename: A
  inflating: cloud.google.com/go/asset/apiv1/doc.go
  inflating: cloud.google.com/go/asset/apiv1/asset_client.go
➜  googleapis git:(master) ✗ unzip bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar-metadata.srcjar
Archive:  bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar-metadata.srcjar
warning [bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar-metadata.srcjar]:  zipfile is empty
➜  googleapis git:(master) ✗ unzip bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar-snippets.srcjar
Archive:  bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar-snippets.srcjar
replace cloud.google.com/go/asset/apiv1/internal/snippets/snippet_metadata.google.cloud.asset.v1.json? [y]es, [n]o, [A]ll, [N]one, [r]ename: A
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/snippet_metadata.google.cloud.asset.v1.json
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/UpdateSavedQuery/main.go.txt
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/ListAssets/main.go.txt
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/ListSavedQueries/main.go.txt
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/SearchAllResources/main.go.txt
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/DeleteFeed/main.go.txt
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/GetOperation/main.go.txt
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/GetSavedQuery/main.go.txt
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/AnalyzeIamPolicyLongrunning/main.go.txt
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/AnalyzeMove/main.go.txt
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/CreateSavedQuery/main.go.txt
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/CreateFeed/main.go.txt
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/QueryAssets/main.go.txt
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/BatchGetAssetsHistory/main.go.txt
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/SearchAllIamPolicies/main.go.txt
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/DeleteSavedQuery/main.go.txt
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/ListFeeds/main.go.txt
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/GetFeed/main.go.txt
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/AnalyzeIamPolicy/main.go.txt
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/AnalyzeOrgPolicyGovernedContainers/main.go.txt
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/UpdateFeed/main.go.txt
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/AnalyzeOrgPolicyGovernedAssets/main.go.txt
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/BatchGetEffectiveIamPolicies/main.go.txt
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/AnalyzeOrgPolicies/main.go.txt
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/ExportAssets/main.go.txt
➜  googleapis git:(master) ✗ unzip bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar-test.srcjar
Archive:  bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar-test.srcjar
replace cloud.google.com/go/asset/apiv1/asset_client_example_test.go? [y]es, [n]o, [A]ll, [N]one, [r]ename: A
  inflating: cloud.google.com/go/asset/apiv1/asset_client_example_test.go

@noahdietz
Copy link
Collaborator

This is the best solution I could think of. The postprocessor in google-cloud-go will have to rename the files to .go.

I think we should try to avoid that tbh. Since they are already named somewhat uniquely i.e. .../main.go, Could we just zip them up and delete them as your changes currently do, but do it without the suffix .txt?

    zip -q -r {output_dir_name}-snippets.srcjar . -i ./*main.go ./*snippet_metadata.*.json
    find . -name "*main.go" -delete
    find . -name "*snippet_metadata.*.json" -delete

We don't generate a main.go for libraries so there shouldn't ever be a collision where we end up zipping/deleting a file that wasn't a snippet.

@quartzmo
Copy link
Member Author

Could we just zip them up and delete them as your changes currently do, but do it without the suffix .txt?

I tried to do it. But in bazel the GoCompilePkg step happens before it reaches the zip steps. See output below:

googleapis output
➜  googleapis git:(master) ✗ bazelisk build //google/cloud/asset/v1:asset_go_gapic
INFO: Analyzed target //google/cloud/asset/v1:asset_go_gapic (0 packages loaded, 0 targets configured).
INFO: Found 1 target...
ERROR: /Users/chrisdsmith/oss/googleapis/google/cloud/asset/v1/BUILD.bazel:140:17: GoCompilePkg google/cloud/asset/v1/asset_go_gapic.a failed: (Exit 1): builder failed: error executing command (from target //google/cloud/asset/v1:asset_go_gapic) bazel-out/darwin-opt-exec-2B5CBBC6/bin/external/go_sdk/builder compilepkg -sdk external/go_sdk -installsuffix darwin_amd64 -src ... (remaining 125 arguments skipped)

Use --sandbox_debug to see verbose messages from the sandbox and retain the sandbox build root for debugging
compilepkg: missing strict dependencies:
/private/var/tmp/_bazel_chrisdsmith/88a0b35d0376b755c9deb3d495f15b1e/sandbox/darwin-sandbox/811/execroot/com_google_googleapis/bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar_main.go/cloud.google.com/go/asset/apiv1/internal/snippets/Client/AnalyzeIamPolicy/main.go: import of "cloud.google.com/go/asset/apiv1"
/private/var/tmp/_bazel_chrisdsmith/88a0b35d0376b755c9deb3d495f15b1e/sandbox/darwin-sandbox/811/execroot/com_google_googleapis/bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar_main.go/cloud.google.com/go/asset/apiv1/internal/snippets/Client/AnalyzeIamPolicyLongrunning/main.go: import of "cloud.google.com/go/asset/apiv1"
/private/var/tmp/_bazel_chrisdsmith/88a0b35d0376b755c9deb3d495f15b1e/sandbox/darwin-sandbox/811/execroot/com_google_googleapis/bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar_main.go/cloud.google.com/go/asset/apiv1/internal/snippets/Client/AnalyzeMove/main.go: import of "cloud.google.com/go/asset/apiv1"
/private/var/tmp/_bazel_chrisdsmith/88a0b35d0376b755c9deb3d495f15b1e/sandbox/darwin-sandbox/811/execroot/com_google_googleapis/bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar_main.go/cloud.google.com/go/asset/apiv1/internal/snippets/Client/AnalyzeOrgPolicies/main.go: import of "cloud.google.com/go/asset/apiv1"
/private/var/tmp/_bazel_chrisdsmith/88a0b35d0376b755c9deb3d495f15b1e/sandbox/darwin-sandbox/811/execroot/com_google_googleapis/bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar_main.go/cloud.google.com/go/asset/apiv1/internal/snippets/Client/AnalyzeOrgPolicyGovernedAssets/main.go: import of "cloud.google.com/go/asset/apiv1"
/private/var/tmp/_bazel_chrisdsmith/88a0b35d0376b755c9deb3d495f15b1e/sandbox/darwin-sandbox/811/execroot/com_google_googleapis/bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar_main.go/cloud.google.com/go/asset/apiv1/internal/snippets/Client/AnalyzeOrgPolicyGovernedContainers/main.go: import of "cloud.google.com/go/asset/apiv1"
/private/var/tmp/_bazel_chrisdsmith/88a0b35d0376b755c9deb3d495f15b1e/sandbox/darwin-sandbox/811/execroot/com_google_googleapis/bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar_main.go/cloud.google.com/go/asset/apiv1/internal/snippets/Client/BatchGetAssetsHistory/main.go: import of "cloud.google.com/go/asset/apiv1"
/private/var/tmp/_bazel_chrisdsmith/88a0b35d0376b755c9deb3d495f15b1e/sandbox/darwin-sandbox/811/execroot/com_google_googleapis/bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar_main.go/cloud.google.com/go/asset/apiv1/internal/snippets/Client/BatchGetEffectiveIamPolicies/main.go: import of "cloud.google.com/go/asset/apiv1"
/private/var/tmp/_bazel_chrisdsmith/88a0b35d0376b755c9deb3d495f15b1e/sandbox/darwin-sandbox/811/execroot/com_google_googleapis/bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar_main.go/cloud.google.com/go/asset/apiv1/internal/snippets/Client/CreateFeed/main.go: import of "cloud.google.com/go/asset/apiv1"
/private/var/tmp/_bazel_chrisdsmith/88a0b35d0376b755c9deb3d495f15b1e/sandbox/darwin-sandbox/811/execroot/com_google_googleapis/bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar_main.go/cloud.google.com/go/asset/apiv1/internal/snippets/Client/CreateSavedQuery/main.go: import of "cloud.google.com/go/asset/apiv1"
/private/var/tmp/_bazel_chrisdsmith/88a0b35d0376b755c9deb3d495f15b1e/sandbox/darwin-sandbox/811/execroot/com_google_googleapis/bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar_main.go/cloud.google.com/go/asset/apiv1/internal/snippets/Client/DeleteFeed/main.go: import of "cloud.google.com/go/asset/apiv1"
/private/var/tmp/_bazel_chrisdsmith/88a0b35d0376b755c9deb3d495f15b1e/sandbox/darwin-sandbox/811/execroot/com_google_googleapis/bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar_main.go/cloud.google.com/go/asset/apiv1/internal/snippets/Client/DeleteSavedQuery/main.go: import of "cloud.google.com/go/asset/apiv1"
/private/var/tmp/_bazel_chrisdsmith/88a0b35d0376b755c9deb3d495f15b1e/sandbox/darwin-sandbox/811/execroot/com_google_googleapis/bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar_main.go/cloud.google.com/go/asset/apiv1/internal/snippets/Client/ExportAssets/main.go: import of "cloud.google.com/go/asset/apiv1"
/private/var/tmp/_bazel_chrisdsmith/88a0b35d0376b755c9deb3d495f15b1e/sandbox/darwin-sandbox/811/execroot/com_google_googleapis/bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar_main.go/cloud.google.com/go/asset/apiv1/internal/snippets/Client/GetFeed/main.go: import of "cloud.google.com/go/asset/apiv1"
/private/var/tmp/_bazel_chrisdsmith/88a0b35d0376b755c9deb3d495f15b1e/sandbox/darwin-sandbox/811/execroot/com_google_googleapis/bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar_main.go/cloud.google.com/go/asset/apiv1/internal/snippets/Client/GetOperation/main.go: import of "cloud.google.com/go/asset/apiv1"
/private/var/tmp/_bazel_chrisdsmith/88a0b35d0376b755c9deb3d495f15b1e/sandbox/darwin-sandbox/811/execroot/com_google_googleapis/bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar_main.go/cloud.google.com/go/asset/apiv1/internal/snippets/Client/GetSavedQuery/main.go: import of "cloud.google.com/go/asset/apiv1"
/private/var/tmp/_bazel_chrisdsmith/88a0b35d0376b755c9deb3d495f15b1e/sandbox/darwin-sandbox/811/execroot/com_google_googleapis/bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar_main.go/cloud.google.com/go/asset/apiv1/internal/snippets/Client/ListAssets/main.go: import of "cloud.google.com/go/asset/apiv1"
/private/var/tmp/_bazel_chrisdsmith/88a0b35d0376b755c9deb3d495f15b1e/sandbox/darwin-sandbox/811/execroot/com_google_googleapis/bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar_main.go/cloud.google.com/go/asset/apiv1/internal/snippets/Client/ListFeeds/main.go: import of "cloud.google.com/go/asset/apiv1"
/private/var/tmp/_bazel_chrisdsmith/88a0b35d0376b755c9deb3d495f15b1e/sandbox/darwin-sandbox/811/execroot/com_google_googleapis/bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar_main.go/cloud.google.com/go/asset/apiv1/internal/snippets/Client/ListSavedQueries/main.go: import of "cloud.google.com/go/asset/apiv1"
/private/var/tmp/_bazel_chrisdsmith/88a0b35d0376b755c9deb3d495f15b1e/sandbox/darwin-sandbox/811/execroot/com_google_googleapis/bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar_main.go/cloud.google.com/go/asset/apiv1/internal/snippets/Client/QueryAssets/main.go: import of "cloud.google.com/go/asset/apiv1"
/private/var/tmp/_bazel_chrisdsmith/88a0b35d0376b755c9deb3d495f15b1e/sandbox/darwin-sandbox/811/execroot/com_google_googleapis/bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar_main.go/cloud.google.com/go/asset/apiv1/internal/snippets/Client/SearchAllIamPolicies/main.go: import of "cloud.google.com/go/asset/apiv1"
/private/var/tmp/_bazel_chrisdsmith/88a0b35d0376b755c9deb3d495f15b1e/sandbox/darwin-sandbox/811/execroot/com_google_googleapis/bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar_main.go/cloud.google.com/go/asset/apiv1/internal/snippets/Client/SearchAllResources/main.go: import of "cloud.google.com/go/asset/apiv1"
/private/var/tmp/_bazel_chrisdsmith/88a0b35d0376b755c9deb3d495f15b1e/sandbox/darwin-sandbox/811/execroot/com_google_googleapis/bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar_main.go/cloud.google.com/go/asset/apiv1/internal/snippets/Client/UpdateFeed/main.go: import of "cloud.google.com/go/asset/apiv1"
/private/var/tmp/_bazel_chrisdsmith/88a0b35d0376b755c9deb3d495f15b1e/sandbox/darwin-sandbox/811/execroot/com_google_googleapis/bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar_main.go/cloud.google.com/go/asset/apiv1/internal/snippets/Client/UpdateSavedQuery/main.go: import of "cloud.google.com/go/asset/apiv1"
No dependencies were provided.
Check that imports in Go sources match importpath attributes in deps.
Target //google/cloud/asset/v1:asset_go_gapic failed to build
Use --verbose_failures to see the command lines of failed build steps.
INFO: Elapsed time: 0.240s, Critical Path: 0.11s
INFO: 2 processes: 2 internal.
FAILED: Build did NOT complete successfully

@noahdietz
Copy link
Collaborator

That's odd because the post_processor step (which runs that script zipping everything into their own output archives) is run before the go_library target that would compile the code

_go_gapic_postprocessed_srcjar(
name = srcjar_name,
gapic_srcjar = ":%s" % raw_srcjar_name,
**kwargs
)
actual_deps = deps + [
"@com_github_googleapis_gax_go_v2//:go_default_library",
"@org_golang_google_api//googleapi:go_default_library",
"@org_golang_google_api//option:go_default_library",
"@org_golang_google_api//option/internaloption:go_default_library",
"@org_golang_google_api//iterator:go_default_library",
"@org_golang_google_api//transport/http:go_default_library",
"@org_golang_google_api//transport/grpc:go_default_library",
"@org_golang_google_grpc//:go_default_library",
"@org_golang_google_grpc//codes:go_default_library",
"@org_golang_google_grpc//metadata:go_default_library",
"@org_golang_google_grpc//status:go_default_library",
"@org_golang_google_protobuf//proto:go_default_library",
"@org_golang_google_protobuf//encoding/protojson:go_default_library",
"@org_golang_google_protobuf//types/known/emptypb:go_default_library",
"@org_golang_google_protobuf//types/known/wrapperspb:go_default_library",
"@org_golang_google_protobuf//types/known/fieldmaskpb:go_default_library",
"@org_golang_google_protobuf//types/known/timestamppb:go_default_library",
"@org_golang_google_protobuf//types/known/anypb:go_default_library",
"@org_golang_google_protobuf//types/known/structpb:go_default_library",
"@org_golang_google_protobuf//types/known/durationpb:go_default_library",
]
main_file = ":%s" % srcjar_name + output_suffix
main_dir = "%s_main" % srcjar_name
unzipped_srcjar(
name = main_dir,
srcjar = main_file,
extension = ".go",
)
# Strip the trailing package alias so that this
# generated library can shade com_google_cloud_go
# go_library targets.
imp = importpath[:importpath.index(";")]
go_library(
name = name,
srcs = [":%s" % main_dir],
deps = actual_deps,
importpath = imp,

@quartzmo
Copy link
Member Author

I'll see if I can figure out exactly what is happening.

@quartzmo
Copy link
Member Author

OK, I believe it's all good now: After taking a break, I could see my mistake, which was that in my earlier attempt I failed to remove .txt from the remove operation.

See current output and archive contents below:

googleapis output
➜  googleapis git:(master) ✗ bazelisk clean --expunge
INFO: Starting clean (this may take a while). Consider using --async if the clean takes more than several minutes.
➜  googleapis git:(master) ✗ bazelisk build //google/cloud/asset/v1:asset_go_gapic
Starting local Bazel server and connecting to it...
...
INFO: From Action google/cloud/asset/v1/asset_go_gapic_srcjar.srcjar:
bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar/cloud.google.com/go/asset/apiv1/asset_client.go
bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar/cloud.google.com/go/asset/apiv1/asset_client_example_test.go
bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/asset_go_gapic_srcjar/cloud.google.com/go/asset/apiv1/doc.go
/private/var/tmp/_bazel_chrisdsmith/88a0b35d0376b755c9deb3d495f15b1e/sandbox/darwin-sandbox/684/execroot/com_google_googleapis /private/var/tmp/_bazel_chrisdsmith/88a0b35d0376b755c9deb3d495f15b1e/sandbox/darwin-sandbox/684/execroot/com_google_googleapis
/private/var/tmp/_bazel_chrisdsmith/88a0b35d0376b755c9deb3d495f15b1e/sandbox/darwin-sandbox/684/execroot/com_google_googleapis
Target //google/cloud/asset/v1:asset_go_gapic up-to-date:
  bazel-bin/google/cloud/asset/v1/asset_go_gapic.a
INFO: Elapsed time: 202.591s, Critical Path: 28.09s
INFO: 723 processes: 37 internal, 686 darwin-sandbox.
INFO: Build completed successfully, 723 total actions
➜  googleapis git:(master) ✗ cd bazel-out/darwin-fastbuild/bin/google/cloud/asset/v1/
➜  v1 ls
asset_go_gapic.a                      asset_go_gapic_srcjar-snippets.srcjar asset_go_gapic_srcjar_main.go         asset_go_proto.a                      asset_proto-descriptor-set.proto.bin
asset_go_gapic.x                      asset_go_gapic_srcjar-test.srcjar     asset_go_gapic_srcjar_raw.srcjar      asset_go_proto.x
asset_go_gapic_srcjar-metadata.srcjar asset_go_gapic_srcjar.srcjar          asset_go_gapic_srcjar_raw.srcjar.zip  asset_go_proto_
➜  v1 unzip asset_go_gapic_srcjar-metadata.srcjar
Archive:  asset_go_gapic_srcjar-metadata.srcjar
warning [asset_go_gapic_srcjar-metadata.srcjar]:  zipfile is empty
➜  v1 unzip asset_go_gapic_srcjar-snippets.srcjar
Archive:  asset_go_gapic_srcjar-snippets.srcjar
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/snippet_metadata.google.cloud.asset.v1.json
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/UpdateSavedQuery/main.go
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/ListAssets/main.go
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/ListSavedQueries/main.go
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/SearchAllResources/main.go
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/DeleteFeed/main.go
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/GetOperation/main.go
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/GetSavedQuery/main.go
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/AnalyzeIamPolicyLongrunning/main.go
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/AnalyzeMove/main.go
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/CreateSavedQuery/main.go
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/CreateFeed/main.go
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/QueryAssets/main.go
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/BatchGetAssetsHistory/main.go
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/SearchAllIamPolicies/main.go
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/DeleteSavedQuery/main.go
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/ListFeeds/main.go
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/GetFeed/main.go
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/AnalyzeIamPolicy/main.go
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/AnalyzeOrgPolicyGovernedContainers/main.go
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/UpdateFeed/main.go
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/AnalyzeOrgPolicyGovernedAssets/main.go
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/BatchGetEffectiveIamPolicies/main.go
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/AnalyzeOrgPolicies/main.go
  inflating: cloud.google.com/go/asset/apiv1/internal/snippets/Client/ExportAssets/main.go
➜  v1 unzip asset_go_gapic_srcjar-test.srcjar
Archive:  asset_go_gapic_srcjar-test.srcjar
  inflating: cloud.google.com/go/asset/apiv1/asset_client_example_test.go
➜  v1 unzip asset_go_gapic_srcjar.srcjar
Archive:  asset_go_gapic_srcjar.srcjar
  inflating: cloud.google.com/go/asset/apiv1/doc.go
  inflating: cloud.google.com/go/asset/apiv1/asset_client.go
➜  v1 ls asset_go_gapic_srcjar_main.go/cloud.google.com/go/asset/apiv1/
asset_client.go doc.go
➜  v1 unzip asset_go_gapic_srcjar_raw.srcjar
Archive:  asset_go_gapic_srcjar_raw.srcjar
replace cloud.google.com/go/asset/apiv1/asset_client.go? [y]es, [n]o, [A]ll, [N]one, [r]ename: A
 extracting: cloud.google.com/go/asset/apiv1/asset_client.go
 extracting: cloud.google.com/go/asset/apiv1/asset_client_example_test.go
 extracting: cloud.google.com/go/asset/apiv1/doc.go
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/AnalyzeIamPolicy/main.go
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/AnalyzeIamPolicyLongrunning/main.go
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/AnalyzeMove/main.go
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/AnalyzeOrgPolicies/main.go
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/AnalyzeOrgPolicyGovernedAssets/main.go
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/AnalyzeOrgPolicyGovernedContainers/main.go
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/BatchGetAssetsHistory/main.go
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/BatchGetEffectiveIamPolicies/main.go
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/CreateFeed/main.go
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/CreateSavedQuery/main.go
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/DeleteFeed/main.go
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/DeleteSavedQuery/main.go
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/ExportAssets/main.go
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/GetFeed/main.go
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/GetOperation/main.go
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/GetSavedQuery/main.go
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/ListAssets/main.go
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/ListFeeds/main.go
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/ListSavedQueries/main.go
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/QueryAssets/main.go
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/SearchAllIamPolicies/main.go
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/SearchAllResources/main.go
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/UpdateFeed/main.go
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/Client/UpdateSavedQuery/main.go
 extracting: cloud.google.com/go/asset/apiv1/internal/snippets/snippet_metadata.google.cloud.asset.v1.json

@noahdietz
Copy link
Collaborator

OK, I believe it's all good now: After taking a break, I could see my mistake, which was that in my earlier attempt I failed to remove .txt from the remove operation.

Great job Chris! Now upload that code so that I can approve it :)

Copy link
Collaborator

@noahdietz noahdietz left a comment

Choose a reason for hiding this comment

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

Well done, @quartzmo

@quartzmo quartzmo merged commit 9810cf4 into googleapis:main Mar 31, 2023
@quartzmo quartzmo deleted the go-gapic-bzl-snippets branch March 31, 2023 22:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants