Skip to content

feat(gcp): add base GCP provider with RHEL target - #925

Open
deekay2310 wants to merge 4 commits into
redhat-developer:mainfrom
deekay2310:gcp-provider-phase1
Open

deekay2310 wants to merge 4 commits into
redhat-developer:mainfrom
deekay2310:gcp-provider-phase1

Conversation

@deekay2310

@deekay2310 deekay2310 commented Oct 6, 2026 •

Copy link
Copy Markdown
Contributor

Summary

  • Adds a new GCP provider to MAPT with end-to-end on-demand RHEL VM provisioning (mapt gcp rhel create/destroy)
  • Provider struct with GCP credential handling (GOOGLE_PROJECT, GOOGLE_REGION, Application Default Credentials)
  • Core Pulumi modules: VPC network, subnet, firewall (SSH), static IP, compute instance with spot scheduling support
  • Data layer: GCP machine type filtering by CPU/memory/family, RHEL image lookup from rhel-cloud, zone listing
  • Allocation module with on-demand zone selection (spot discovery stubbed for Phase 2)
  • CLI wired into root command alongside aws, azure, ibmcloud

Test plan

  • go build ./... passes
  • mapt gcp --help shows RHEL subcommand
  • mapt gcp rhel create --help shows all flags (version, arch, spot, compute request)
  • mapt gcp rhel destroy --help shows force-destroy and keep-state flags
  • E2E: mapt gcp rhel create --project-name test-gcp --version 9 provisions a RHEL 9 VM on GCP, SSH is reachable
  • E2E: mapt gcp rhel destroy --project-name test-gcp tears down all resources cleanly

🤖 Generated with Claude Code

Implements Phase 1 of the GCP provider (AIPCC-32403):
- Provider struct with credentials, Init, DefaultHostingPlace
- CLI commands: mapt gcp rhel create/destroy
- Networking module: VPC, subnet, firewall, static IP
- Compute module: Instance creation with spot scheduling support
- Data layer: machine type filtering, RHEL image lookup, zone listing
- Allocation module: on-demand zone selection (spot stubbed for Phase 2)
- Action layer: end-to-end Create/Destroy orchestration

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Oct 6, 2026 •

Copy link
Copy Markdown

Important

Review skipped

Too many files!

This PR contains 459 files, which is 359 over the limit of 100.

To get a review, reduce the PR to 100 files or fewer by splitting it into smaller PRs or changing its base branch.

Upgrade to a paid plan to raise the limit.

Usage-priced reviews support at most 300 files.

⚙️ Run configuration
  • Configuration used: Organization UI
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: a572b720-dfd4-4369-8582-d365a31ec21b
📥 Commits

Reviewing files that changed from the base of the PR and between eb7f7f7 and 8f4323a.

⛔ Files ignored due to path filters (12)
  • go.sum is excluded by !**/*.sum
  • vendor/github.com/google/s2a-go/internal/proto/common_go_proto/common.pb.go is excluded by !**/*.pb.go
  • vendor/github.com/google/s2a-go/internal/proto/s2a_context_go_proto/s2a_context.pb.go is excluded by !**/*.pb.go
  • vendor/github.com/google/s2a-go/internal/proto/s2a_go_proto/s2a.pb.go is excluded by !**/*.pb.go
  • vendor/github.com/google/s2a-go/internal/proto/s2a_go_proto/s2a_grpc.pb.go is excluded by !**/*.pb.go
  • vendor/github.com/google/s2a-go/internal/proto/v2/common_go_proto/common.pb.go is excluded by !**/*.pb.go
  • vendor/github.com/google/s2a-go/internal/proto/v2/s2a_context_go_proto/s2a_context.pb.go is excluded by !**/*.pb.go
  • vendor/github.com/google/s2a-go/internal/proto/v2/s2a_go_proto/s2a.pb.go is excluded by !**/*.pb.go
  • vendor/github.com/google/s2a-go/internal/proto/v2/s2a_go_proto/s2a_grpc.pb.go is excluded by !**/*.pb.go
  • vendor/github.com/googleapis/gax-go/v2/apierror/internal/proto/custom_error.pb.go is excluded by !**/*.pb.go
  • vendor/github.com/googleapis/gax-go/v2/apierror/internal/proto/error.pb.go is excluded by !**/*.pb.go
  • vendor/google.golang.org/genproto/googleapis/rpc/code/code.pb.go is excluded by !**/*.pb.go
📒 Files selected for processing (459)
  • cmd/mapt/cmd/gcp/gcp.go
  • cmd/mapt/cmd/gcp/hosts/rhel.go
  • cmd/mapt/cmd/root.go
  • go.mod
  • pkg/provider/gcp/action/rhel/constants.go
  • pkg/provider/gcp/action/rhel/rhel.go
  • pkg/provider/gcp/constants/constants.go
  • pkg/provider/gcp/data/compute-request.go
  • pkg/provider/gcp/data/images.go
  • pkg/provider/gcp/data/zones.go
  • pkg/provider/gcp/gcp.go
  • pkg/provider/gcp/modules/allocation/allocation.go
  • pkg/provider/gcp/modules/compute/compute.go
  • pkg/provider/gcp/modules/network/network.go
  • vendor/cloud.google.com/go/auth/CHANGES.md
  • vendor/cloud.google.com/go/auth/LICENSE
  • vendor/cloud.google.com/go/auth/README.md
  • vendor/cloud.google.com/go/auth/auth.go
  • vendor/cloud.google.com/go/auth/credentials/compute.go
  • vendor/cloud.google.com/go/auth/credentials/detect.go
  • vendor/cloud.google.com/go/auth/credentials/doc.go
  • vendor/cloud.google.com/go/auth/credentials/filetypes.go
  • vendor/cloud.google.com/go/auth/credentials/internal/externalaccount/aws_provider.go
  • vendor/cloud.google.com/go/auth/credentials/internal/externalaccount/executable_provider.go
  • vendor/cloud.google.com/go/auth/credentials/internal/externalaccount/externalaccount.go
  • vendor/cloud.google.com/go/auth/credentials/internal/externalaccount/file_provider.go
  • vendor/cloud.google.com/go/auth/credentials/internal/externalaccount/info.go
  • vendor/cloud.google.com/go/auth/credentials/internal/externalaccount/programmatic_provider.go
  • vendor/cloud.google.com/go/auth/credentials/internal/externalaccount/url_provider.go
  • vendor/cloud.google.com/go/auth/credentials/internal/externalaccount/x509_provider.go
  • vendor/cloud.google.com/go/auth/credentials/internal/externalaccountuser/externalaccountuser.go
  • vendor/cloud.google.com/go/auth/credentials/internal/gdch/gdch.go
  • vendor/cloud.google.com/go/auth/credentials/internal/impersonate/idtoken.go
  • vendor/cloud.google.com/go/auth/credentials/internal/impersonate/impersonate.go
  • vendor/cloud.google.com/go/auth/credentials/internal/stsexchange/sts_exchange.go
  • vendor/cloud.google.com/go/auth/credentials/selfsignedjwt.go
  • vendor/cloud.google.com/go/auth/httptransport/httptransport.go
  • vendor/cloud.google.com/go/auth/httptransport/transport.go
  • vendor/cloud.google.com/go/auth/internal/credsfile/credsfile.go
  • vendor/cloud.google.com/go/auth/internal/credsfile/filetype.go
  • vendor/cloud.google.com/go/auth/internal/credsfile/parse.go
  • vendor/cloud.google.com/go/auth/internal/internal.go
  • vendor/cloud.google.com/go/auth/internal/jwt/jwt.go
  • vendor/cloud.google.com/go/auth/internal/retry/retry.go
  • vendor/cloud.google.com/go/auth/internal/transport/cba.go
  • vendor/cloud.google.com/go/auth/internal/transport/cert/default_cert.go
  • vendor/cloud.google.com/go/auth/internal/transport/cert/enterprise_cert.go
  • vendor/cloud.google.com/go/auth/internal/transport/cert/secureconnect_cert.go
  • vendor/cloud.google.com/go/auth/internal/transport/cert/workload_cert.go
  • vendor/cloud.google.com/go/auth/internal/transport/headers/headers.go
  • vendor/cloud.google.com/go/auth/internal/transport/s2a.go
  • vendor/cloud.google.com/go/auth/internal/transport/transport.go
  • vendor/cloud.google.com/go/auth/internal/trustboundary/external_accounts_config_providers.go
  • vendor/cloud.google.com/go/auth/internal/trustboundary/trust_boundary.go
  • vendor/cloud.google.com/go/auth/internal/version.go
  • vendor/cloud.google.com/go/auth/oauth2adapt/CHANGES.md
  • vendor/cloud.google.com/go/auth/oauth2adapt/LICENSE
  • vendor/cloud.google.com/go/auth/oauth2adapt/oauth2adapt.go
  • vendor/cloud.google.com/go/auth/threelegged.go
  • vendor/cloud.google.com/go/compute/metadata/CHANGES.md
  • vendor/cloud.google.com/go/compute/metadata/LICENSE
  • vendor/cloud.google.com/go/compute/metadata/README.md
  • vendor/cloud.google.com/go/compute/metadata/log.go
  • vendor/cloud.google.com/go/compute/metadata/metadata.go
  • vendor/cloud.google.com/go/compute/metadata/retry.go
  • vendor/cloud.google.com/go/compute/metadata/retry_linux.go
  • vendor/cloud.google.com/go/compute/metadata/syscheck.go
  • vendor/cloud.google.com/go/compute/metadata/syscheck_linux.go
  • vendor/cloud.google.com/go/compute/metadata/syscheck_windows.go
  • vendor/github.com/felixge/httpsnoop/.gitignore
  • vendor/github.com/felixge/httpsnoop/LICENSE.txt
  • vendor/github.com/felixge/httpsnoop/Makefile
  • vendor/github.com/felixge/httpsnoop/README.md
  • vendor/github.com/felixge/httpsnoop/capture_metrics.go
  • vendor/github.com/felixge/httpsnoop/docs.go
  • vendor/github.com/felixge/httpsnoop/wrap_generated.go
  • vendor/github.com/google/s2a-go/.gitignore
  • vendor/github.com/google/s2a-go/CODE_OF_CONDUCT.md
  • vendor/github.com/google/s2a-go/CONTRIBUTING.md
  • vendor/github.com/google/s2a-go/LICENSE.md
  • vendor/github.com/google/s2a-go/README.md
  • vendor/github.com/google/s2a-go/fallback/s2a_fallback.go
  • vendor/github.com/google/s2a-go/internal/authinfo/authinfo.go
  • vendor/github.com/google/s2a-go/internal/handshaker/handshaker.go
  • vendor/github.com/google/s2a-go/internal/handshaker/service/service.go
  • vendor/github.com/google/s2a-go/internal/record/internal/aeadcrypter/aeadcrypter.go
  • vendor/github.com/google/s2a-go/internal/record/internal/aeadcrypter/aesgcm.go
  • vendor/github.com/google/s2a-go/internal/record/internal/aeadcrypter/chachapoly.go
  • vendor/github.com/google/s2a-go/internal/record/internal/aeadcrypter/common.go
  • vendor/github.com/google/s2a-go/internal/record/internal/halfconn/ciphersuite.go
  • vendor/github.com/google/s2a-go/internal/record/internal/halfconn/counter.go
  • vendor/github.com/google/s2a-go/internal/record/internal/halfconn/expander.go
  • vendor/github.com/google/s2a-go/internal/record/internal/halfconn/halfconn.go
  • vendor/github.com/google/s2a-go/internal/record/record.go
  • vendor/github.com/google/s2a-go/internal/record/ticketsender.go
  • vendor/github.com/google/s2a-go/internal/tokenmanager/tokenmanager.go
  • vendor/github.com/google/s2a-go/internal/v2/README.md
  • vendor/github.com/google/s2a-go/internal/v2/certverifier/certverifier.go
  • vendor/github.com/google/s2a-go/internal/v2/remotesigner/remotesigner.go
  • vendor/github.com/google/s2a-go/internal/v2/s2av2.go
  • vendor/github.com/google/s2a-go/internal/v2/tlsconfigstore/tlsconfigstore.go
  • vendor/github.com/google/s2a-go/retry/retry.go
  • vendor/github.com/google/s2a-go/s2a.go
  • vendor/github.com/google/s2a-go/s2a_options.go
  • vendor/github.com/google/s2a-go/s2a_utils.go
  • vendor/github.com/google/s2a-go/stream/s2a_stream.go
  • vendor/github.com/googleapis/enterprise-certificate-proxy/LICENSE
  • vendor/github.com/googleapis/enterprise-certificate-proxy/client/client.go
  • vendor/github.com/googleapis/enterprise-certificate-proxy/client/util/util.go
  • vendor/github.com/googleapis/gax-go/v2/.release-please-manifest.json
  • vendor/github.com/googleapis/gax-go/v2/CHANGES.md
  • vendor/github.com/googleapis/gax-go/v2/LICENSE
  • vendor/github.com/googleapis/gax-go/v2/apierror/apierror.go
  • vendor/github.com/googleapis/gax-go/v2/apierror/internal/proto/README.md
  • vendor/github.com/googleapis/gax-go/v2/apierror/internal/proto/custom_error.proto
  • vendor/github.com/googleapis/gax-go/v2/apierror/internal/proto/error.proto
  • vendor/github.com/googleapis/gax-go/v2/call_option.go
  • vendor/github.com/googleapis/gax-go/v2/callctx/callctx.go
  • vendor/github.com/googleapis/gax-go/v2/content_type.go
  • vendor/github.com/googleapis/gax-go/v2/feature.go
  • vendor/github.com/googleapis/gax-go/v2/gax.go
  • vendor/github.com/googleapis/gax-go/v2/header.go
  • vendor/github.com/googleapis/gax-go/v2/internal/version.go
  • vendor/github.com/googleapis/gax-go/v2/internallog/internal/internal.go
  • vendor/github.com/googleapis/gax-go/v2/internallog/internallog.go
  • vendor/github.com/googleapis/gax-go/v2/invoke.go
  • vendor/github.com/googleapis/gax-go/v2/proto_json_stream.go
  • vendor/github.com/googleapis/gax-go/v2/release-please-config.json
  • vendor/github.com/googleapis/gax-go/v2/telemetry.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/LICENSE
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/address.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/attachedDisk.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/autoscaler.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/backendBucket.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/backendBucketIamBinding.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/backendBucketIamMember.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/backendBucketIamPolicy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/backendBucketSignedUrlKey.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/backendService.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/backendServiceIamBinding.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/backendServiceIamMember.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/backendServiceIamPolicy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/backendServiceSignedUrlKey.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/caExternalAccountKey.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/crossSiteNetwork.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/disk.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/diskAsyncReplication.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/diskIamBinding.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/diskIamMember.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/diskIamPolicy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/diskResourcePolicyAttachment.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/externalVpnGateway.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/firewall.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/firewallPolicy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/firewallPolicyAssociation.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/firewallPolicyRule.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/firewallPolicyWithRules.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/forwardingRule.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/futureReservation.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getAddress.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getAddresses.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getBackendBucket.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getBackendBucketIamPolicy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getBackendService.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getBackendServiceIamPolicy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getCertificate.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getDefaultServiceAccount.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getDisk.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getDiskIamPolicy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getForwardingRule.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getForwardingRules.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getGlobalAddress.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getGlobalForwardingRule.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getHcVpnGateway.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getHealthCheck.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getImage.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getImageIamPolicy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getImages.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getInstance.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getInstanceGroup.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getInstanceGroupManager.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getInstanceGuestAttributes.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getInstanceIamPolicy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getInstanceSerialPort.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getInstanceTemplate.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getInstanceTemplateIamPolicy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getInstantSnapshotIamPolicy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getLBIPRanges.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getMachineImageIamPolicy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getMachineTypes.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getNetblockIPRanges.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getNetwork.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getNetworkAttachment.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getNetworkEndpointGroup.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getNetworkPeering.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getNetworks.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getNodeTypes.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getRegionBackendService.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getRegionBackendServiceIamPolicy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getRegionDisk.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getRegionDiskIamPolicy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getRegionInstanceGroup.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getRegionInstanceGroupManager.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getRegionInstanceTemplate.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getRegionNetworkEndpointGroup.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getRegionSSLPolicy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getRegionSslCertificate.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getRegions.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getReservation.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getResourcePolicy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getRouter.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getRouterNat.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getRouterStatus.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getSSLPolicy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getSecurityPolicy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getSnapshot.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getSnapshotIamPolicy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getStoragePoolIamPolicy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getStoragePoolTypes.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getSubnetwork.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getSubnetworkIamPolicy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getSubnetworks.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getVPNGateway.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/getZones.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/globalAddress.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/globalForwardingRule.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/globalNetworkEndpoint.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/globalNetworkEndpointGroup.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/haVpnGateway.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/healthCheck.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/httpHealthCheck.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/httpsHealthCheck.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/image.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/imageIamBinding.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/imageIamMember.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/imageIamPolicy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/init.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/instance.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/instanceFromMachineImage.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/instanceFromTemplate.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/instanceGroup.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/instanceGroupManager.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/instanceGroupMembership.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/instanceGroupNamedPort.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/instanceIAMBinding.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/instanceIAMMember.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/instanceIAMPolicy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/instanceSettings.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/instanceTemplate.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/instanceTemplateIamBinding.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/instanceTemplateIamMember.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/instanceTemplateIamPolicy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/instantSnapshot.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/instantSnapshotIamBinding.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/instantSnapshotIamMember.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/instantSnapshotIamPolicy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/interconnect.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/interconnectAttachment.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/interconnectAttachmentGroup.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/interconnectGroup.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/machineImage.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/machineImageIamBinding.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/machineImageIamMember.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/machineImageIamPolicy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/managedSslCertificate.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/mangedSslCertificate.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/network.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/networkAttachment.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/networkEdgeSecurityService.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/networkEndpoint.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/networkEndpointGroup.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/networkEndpointList.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/networkFirewallPolicy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/networkFirewallPolicyAssociation.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/networkFirewallPolicyPacketMirroringRule.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/networkFirewallPolicyRule.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/networkFirewallPolicyWithRules.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/networkPeering.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/networkPeeringRoutesConfig.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/nodeGroup.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/nodeTemplate.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/organizationSecurityPolicy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/organizationSecurityPolicyAssociation.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/organizationSecurityPolicyRule.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/packetMirroring.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/perInstanceConfig.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/previewFeature.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/projectCloudArmorTier.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/projectDefaultNetworkTier.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/projectMetadata.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/projectMetadataItem.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/publicAdvertisedPrefix.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/publicDelegatedPrefix.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/pulumiTypes.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/pulumiTypes1.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/pulumiTypes2.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/regionAutoscaler.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/regionBackendService.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/regionBackendServiceIamBinding.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/regionBackendServiceIamMember.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/regionBackendServiceIamPolicy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/regionCommitment.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/regionDisk.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/regionDiskIamBinding.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/regionDiskIamMember.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/regionDiskIamPolicy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/regionDiskResourcePolicyAttachment.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/regionHealthCheck.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/regionInstanceGroupManager.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/regionInstanceTemplate.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/regionNetworkEndpoint.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/regionNetworkEndpointGroup.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/regionNetworkFirewallPolicy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/regionNetworkFirewallPolicyAssociation.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/regionNetworkFirewallPolicyRule.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/regionNetworkFirewallPolicyWithRules.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/regionPerInstanceConfig.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/regionResizeRequest.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/regionSecurityPolicy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/regionSecurityPolicyRule.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/regionSslCertificate.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/regionSslPolicy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/regionTargetHttpProxy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/regionTargetHttpsProxy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/regionTargetTcpProxy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/regionUrlMap.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/reservation.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/resizeRequest.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/resourcePolicy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/resourcePolicyAttachment.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/route.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/router.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/routerInterface.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/routerNat.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/routerNatAddress.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/routerPeer.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/routerRoutePolicy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/routerStatus.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/securityPolicy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/securityPolicyRule.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/securityScanConfig.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/serviceAttachment.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/sharedVPCHostProject.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/sharedVPCServiceProject.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/snapshot.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/snapshotIamBinding.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/snapshotIamMember.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/snapshotIamPolicy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/snapshotSettings.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/sslcertificate.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/sslpolicy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/storagePool.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/storagePoolIamBinding.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/storagePoolIamMember.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/storagePoolIamPolicy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/subnetwork.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/subnetworkIAMBinding.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/subnetworkIAMMember.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/subnetworkIAMPolicy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/targetGrpcProxy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/targetHttpProxy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/targetHttpsProxy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/targetInstance.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/targetPool.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/targetSSLProxy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/targetTCPProxy.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/urlmap.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/vpngateway.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/vpntunnel.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute/wireGroup.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/internal/pulumiUtilities.go
  • vendor/github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/internal/pulumiVersion.go
  • vendor/go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp/LICENSE
  • vendor/go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp/common.go
  • vendor/go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp/config.go
  • vendor/go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp/doc.go
  • vendor/go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp/handler.go
  • vendor/go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp/internal/request/body_wrapper.go
  • vendor/go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp/internal/request/gen.go
  • vendor/go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp/internal/request/resp_writer_wrapper.go
  • vendor/go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp/internal/semconv/client.go
  • vendor/go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp/internal/semconv/gen.go
  • vendor/go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp/internal/semconv/server.go
  • vendor/go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp/internal/semconv/util.go
  • vendor/go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp/labeler.go
  • vendor/go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp/start_time_context.go
  • vendor/go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp/transport.go
  • vendor/go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp/version.go
  • vendor/go.opentelemetry.io/otel/semconv/v1.43.0/httpconv/metric.go
  • vendor/golang.org/x/crypto/chacha20poly1305/chacha20poly1305.go
  • vendor/golang.org/x/crypto/chacha20poly1305/chacha20poly1305_amd64.go
  • vendor/golang.org/x/crypto/chacha20poly1305/chacha20poly1305_amd64.s
  • vendor/golang.org/x/crypto/chacha20poly1305/chacha20poly1305_generic.go
  • vendor/golang.org/x/crypto/chacha20poly1305/chacha20poly1305_noasm.go
  • vendor/golang.org/x/crypto/chacha20poly1305/fips140only_compat.go
  • vendor/golang.org/x/crypto/chacha20poly1305/fips140only_go1.26.go
  • vendor/golang.org/x/crypto/chacha20poly1305/xchacha20poly1305.go
  • vendor/golang.org/x/oauth2/authhandler/authhandler.go
  • vendor/golang.org/x/oauth2/google/appengine.go
  • vendor/golang.org/x/oauth2/google/default.go
  • vendor/golang.org/x/oauth2/google/doc.go
  • vendor/golang.org/x/oauth2/google/error.go
  • vendor/golang.org/x/oauth2/google/externalaccount/aws.go
  • vendor/golang.org/x/oauth2/google/externalaccount/basecredentials.go
  • vendor/golang.org/x/oauth2/google/externalaccount/executablecredsource.go
  • vendor/golang.org/x/oauth2/google/externalaccount/filecredsource.go
  • vendor/golang.org/x/oauth2/google/externalaccount/header.go
  • vendor/golang.org/x/oauth2/google/externalaccount/programmaticrefreshcredsource.go
  • vendor/golang.org/x/oauth2/google/externalaccount/urlcredsource.go
  • vendor/golang.org/x/oauth2/google/google.go
  • vendor/golang.org/x/oauth2/google/internal/externalaccountauthorizeduser/externalaccountauthorizeduser.go
  • vendor/golang.org/x/oauth2/google/internal/impersonate/impersonate.go
  • vendor/golang.org/x/oauth2/google/internal/stsexchange/clientauth.go
  • vendor/golang.org/x/oauth2/google/internal/stsexchange/sts_exchange.go
  • vendor/golang.org/x/oauth2/google/jwt.go
  • vendor/golang.org/x/oauth2/google/sdk.go
  • vendor/golang.org/x/oauth2/jws/jws.go
  • vendor/golang.org/x/oauth2/jwt/jwt.go
  • vendor/google.golang.org/api/AUTHORS
  • vendor/google.golang.org/api/CONTRIBUTORS
  • vendor/google.golang.org/api/LICENSE
  • vendor/google.golang.org/api/compute/v1/compute-api.json
  • vendor/google.golang.org/api/compute/v1/compute-gen.go
  • vendor/google.golang.org/api/compute/v1/compute2-gen.go
  • vendor/google.golang.org/api/compute/v1/compute3-gen.go
  • vendor/google.golang.org/api/googleapi/googleapi.go
  • vendor/google.golang.org/api/googleapi/transport/apikey.go
  • vendor/google.golang.org/api/googleapi/types.go
  • vendor/google.golang.org/api/internal/cba.go
  • vendor/google.golang.org/api/internal/cert/default_cert.go
  • vendor/google.golang.org/api/internal/cert/enterprise_cert.go
  • vendor/google.golang.org/api/internal/cert/secureconnect_cert.go
  • vendor/google.golang.org/api/internal/conn_pool.go
  • vendor/google.golang.org/api/internal/credentialstype/credentialstype.go
  • vendor/google.golang.org/api/internal/creds.go
  • vendor/google.golang.org/api/internal/gensupport/buffer.go
  • vendor/google.golang.org/api/internal/gensupport/doc.go
  • vendor/google.golang.org/api/internal/gensupport/error.go
  • vendor/google.golang.org/api/internal/gensupport/json.go
  • vendor/google.golang.org/api/internal/gensupport/jsonfloat.go
  • vendor/google.golang.org/api/internal/gensupport/media.go
  • vendor/google.golang.org/api/internal/gensupport/params.go
  • vendor/google.golang.org/api/internal/gensupport/resumable.go
  • vendor/google.golang.org/api/internal/gensupport/retry.go
  • vendor/google.golang.org/api/internal/gensupport/send.go
  • vendor/google.golang.org/api/internal/gensupport/version.go
  • vendor/google.golang.org/api/internal/impersonate/impersonate.go
  • vendor/google.golang.org/api/internal/s2a.go
  • vendor/google.golang.org/api/internal/settings.go
  • vendor/google.golang.org/api/internal/third_party/uritemplates/LICENSE
  • vendor/google.golang.org/api/internal/third_party/uritemplates/METADATA
  • vendor/google.golang.org/api/internal/third_party/uritemplates/uritemplates.go
  • vendor/google.golang.org/api/internal/third_party/uritemplates/utils.go
  • vendor/google.golang.org/api/internal/version.go
  • vendor/google.golang.org/api/option/internaloption/internaloption.go
  • vendor/google.golang.org/api/option/internaloption/unsaferesolver.go
  • vendor/google.golang.org/api/option/option.go
  • vendor/google.golang.org/api/transport/http/dial.go
  • vendor/modules.txt

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.


Comment @coderabbitai help to get the list of available commands.

deekay2310 and others added 2 commits October 7, 2026 08:49
Merge origin/main into gcp-provider-phase1, resolving dependency
version conflicts in go.mod, go.sum, and vendor/modules.txt from
the go.opentelemetry.io/otel v1.46→v1.47 bump.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
GOOGLE_CREDENTIALS (Terraform/Pulumi convention) is not recognized by
Google's Go SDK which expects GOOGLE_APPLICATION_CREDENTIALS. Bridge
the two in Init() so users only need to set one.

GCP RHEL images use Google guest agent instead of cloud-init, so the
cloud-init readiness check fails. Use a simple ping check instead.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@deekay2310

Copy link
Copy Markdown
Contributor Author

E2E Test Results (2026-10-07)

Environment: GCP, us-central1

Create ✅

  • Allocation found 4 zones, selected one with matching machine types
  • Pulumi created 8 resources: VPC, subnet, firewall, static IP, TLS key, compute instance, readiness check, stack
  • VM: RHEL 9.8 (Plow), e2-standard-4
  • SSH verified with generated key pair
  • Duration: ~1m10s

Destroy ✅

  • All 8 resources deleted cleanly
  • Duration: ~1m15s

Fixes applied during testing

  1. Credential bridging (gcp.go) — bridge GOOGLE_CREDENTIALS → GOOGLE_APPLICATION_CREDENTIALS in Init() so Google Go SDK can authenticate
  2. Readiness check (compute.go) — GCP RHEL images use Google guest agent, not cloud-init; switched to ping-based SSH check

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

@ppitonak ppitonak left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

  1. please add at least basic documentation which creds to use
  2. when I set only --cpus 8, it failed with [customConstraints/custom.denyCostlyMachineTypes] : This organization policy prevents creating instances with exotic machine types. See https://url.corp.redhat.com/bab8f07 for the list of types that are allowed. Contact the IT Public Cloud team at help.redhat.com for an exception
  3. when I set --cpus 2 --memory 4, it failed with Invalid resource usage: 'Requested boot disk architecture (X86_64) is not compatible with machine type architecture (ARM64).... I didn't check deeply why it happend but IMHO this kind of misconfiguration should not happen

@ppitonak ppitonak left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

I was able to create a RHEL VM, IMHO acceptable for the initial implementation.

This branch has not been deployed

No deployments
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.

2 participants