Skip to content

Commit 8e90db9

Browse files
feat: Initial generation of google-cloud-hypercompute_cluster-v1beta (#32126)
Co-authored-by: Yoshi Automation Bot <[email protected]>
1 parent 5233dda commit 8e90db9

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

61 files changed

+10522
-0
lines changed

.release-please-manifest.json

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -451,6 +451,8 @@
451451
"google-cloud-gsuite_add_ons+FILLER": "0.0.0",
452452
"google-cloud-gsuite_add_ons-v1": "1.4.1",
453453
"google-cloud-gsuite_add_ons-v1+FILLER": "0.0.0",
454+
"google-cloud-hypercompute_cluster-v1beta": "0.0.1",
455+
"google-cloud-hypercompute_cluster-v1beta+FILLER": "0.0.0",
454456
"google-cloud-iap": "1.5.2",
455457
"google-cloud-iap+FILLER": "0.0.0",
456458
"google-cloud-iap-v1": "1.5.1",
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
deep-copy-regex:
2+
- source: /google/cloud/hypercomputecluster/v1beta/[^/]+-ruby/(.*)
3+
dest: /owl-bot-staging/google-cloud-hypercompute_cluster-v1beta/$1
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
# Ignore bundler lockfiles
2+
Gemfile.lock
3+
gems.locked
4+
5+
# Ignore documentation output
6+
doc/*
7+
.yardoc/*
8+
9+
# Ignore test output
10+
coverage/*
11+
12+
# Ignore build artifacts
13+
pkg/*
14+
15+
# Ignore files commonly present in certain dev environments
16+
.vagrant
17+
.DS_STORE
18+
.idea
19+
*.iml
20+
21+
# Ignore synth output
22+
__pycache__
Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
{
2+
"generated": [
3+
".gitignore",
4+
".repo-metadata.json",
5+
".rubocop.yml",
6+
".toys.rb",
7+
".yardopts",
8+
"AUTHENTICATION.md",
9+
"CHANGELOG.md",
10+
"Gemfile",
11+
"LICENSE.md",
12+
"README.md",
13+
"Rakefile",
14+
"gapic_metadata.json",
15+
"google-cloud-hypercompute_cluster-v1beta.gemspec",
16+
"lib/google-cloud-hypercompute_cluster-v1beta.rb",
17+
"lib/google/cloud/hypercompute_cluster/v1beta.rb",
18+
"lib/google/cloud/hypercompute_cluster/v1beta/bindings_override.rb",
19+
"lib/google/cloud/hypercompute_cluster/v1beta/hypercompute_cluster.rb",
20+
"lib/google/cloud/hypercompute_cluster/v1beta/hypercompute_cluster/client.rb",
21+
"lib/google/cloud/hypercompute_cluster/v1beta/hypercompute_cluster/credentials.rb",
22+
"lib/google/cloud/hypercompute_cluster/v1beta/hypercompute_cluster/operations.rb",
23+
"lib/google/cloud/hypercompute_cluster/v1beta/hypercompute_cluster/paths.rb",
24+
"lib/google/cloud/hypercompute_cluster/v1beta/hypercompute_cluster/rest.rb",
25+
"lib/google/cloud/hypercompute_cluster/v1beta/hypercompute_cluster/rest/client.rb",
26+
"lib/google/cloud/hypercompute_cluster/v1beta/hypercompute_cluster/rest/operations.rb",
27+
"lib/google/cloud/hypercompute_cluster/v1beta/hypercompute_cluster/rest/service_stub.rb",
28+
"lib/google/cloud/hypercompute_cluster/v1beta/rest.rb",
29+
"lib/google/cloud/hypercompute_cluster/v1beta/version.rb",
30+
"lib/google/cloud/hypercomputecluster/v1beta/hypercompute_cluster_pb.rb",
31+
"lib/google/cloud/hypercomputecluster/v1beta/hypercompute_cluster_services_pb.rb",
32+
"lib/google/cloud/hypercomputecluster/v1beta/operation_metadata_pb.rb",
33+
"proto_docs/README.md",
34+
"proto_docs/google/api/client.rb",
35+
"proto_docs/google/api/field_behavior.rb",
36+
"proto_docs/google/api/field_info.rb",
37+
"proto_docs/google/api/launch_stage.rb",
38+
"proto_docs/google/api/resource.rb",
39+
"proto_docs/google/cloud/hypercomputecluster/v1beta/hypercompute_cluster.rb",
40+
"proto_docs/google/cloud/hypercomputecluster/v1beta/operation_metadata.rb",
41+
"proto_docs/google/longrunning/operations.rb",
42+
"proto_docs/google/protobuf/any.rb",
43+
"proto_docs/google/protobuf/duration.rb",
44+
"proto_docs/google/protobuf/empty.rb",
45+
"proto_docs/google/protobuf/field_mask.rb",
46+
"proto_docs/google/protobuf/timestamp.rb",
47+
"proto_docs/google/rpc/status.rb",
48+
"snippets/Gemfile",
49+
"snippets/hypercompute_cluster/create_cluster.rb",
50+
"snippets/hypercompute_cluster/delete_cluster.rb",
51+
"snippets/hypercompute_cluster/get_cluster.rb",
52+
"snippets/hypercompute_cluster/list_clusters.rb",
53+
"snippets/hypercompute_cluster/update_cluster.rb",
54+
"snippets/snippet_metadata_google.cloud.hypercomputecluster.v1beta.json",
55+
"test/google/cloud/hypercompute_cluster/v1beta/hypercompute_cluster_operations_test.rb",
56+
"test/google/cloud/hypercompute_cluster/v1beta/hypercompute_cluster_paths_test.rb",
57+
"test/google/cloud/hypercompute_cluster/v1beta/hypercompute_cluster_rest_test.rb",
58+
"test/google/cloud/hypercompute_cluster/v1beta/hypercompute_cluster_test.rb",
59+
"test/helper.rb"
60+
],
61+
"static": [
62+
".OwlBot.yaml"
63+
]
64+
}
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
{
2+
"api_id": "hypercomputecluster.googleapis.com",
3+
"api_shortname": "hypercomputecluster",
4+
"client_documentation": "https://cloud.google.com/ruby/docs/reference/google-cloud-hypercompute_cluster-v1beta/latest",
5+
"distribution_name": "google-cloud-hypercompute_cluster-v1beta",
6+
"is_cloud": true,
7+
"language": "ruby",
8+
"name": "hypercomputecluster",
9+
"name_pretty": "Cluster Director V1BETA API",
10+
"product_documentation": "https://cloud.google.com/blog/products/compute/managed-slurm-and-other-cluster-director-enhancements",
11+
"release_level": "unreleased",
12+
"repo": "googleapis/google-cloud-ruby",
13+
"requires_billing": true,
14+
"ruby-cloud-description": "google-cloud-hypercompute_cluster-v1beta is the official client library for the Cluster Director V1BETA API. Note that google-cloud-hypercompute_cluster-v1beta is a version-specific client library. For most uses, we recommend installing the main client library google-cloud-hypercompute_cluster instead. See the readme for more details.",
15+
"ruby-cloud-product-url": "https://cloud.google.com/blog/products/compute/managed-slurm-and-other-cluster-director-enhancements",
16+
"library_type": "GAPIC_AUTO"
17+
}
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
inherit_gem:
2+
google-style: google-style.yml
3+
4+
AllCops:
5+
Exclude:
6+
- "google-cloud-hypercompute_cluster-v1beta.gemspec"
7+
- "lib/**/*_pb.rb"
8+
- "proto_docs/**/*"
9+
- "test/**/*"
10+
- "acceptance/**/*"
11+
- "samples/acceptance/**/*"
12+
- "Rakefile"
13+
14+
Layout/LineLength:
15+
Enabled: false
16+
Metrics/AbcSize:
17+
Enabled: false
18+
Metrics/ClassLength:
19+
Enabled: false
20+
Metrics/CyclomaticComplexity:
21+
Enabled: false
22+
Metrics/MethodLength:
23+
Enabled: false
24+
Metrics/ModuleLength:
25+
Enabled: false
26+
Metrics/PerceivedComplexity:
27+
Enabled: false
28+
Naming/AccessorMethodName:
29+
Exclude:
30+
- "snippets/**/*.rb"
31+
Naming/FileName:
32+
Exclude:
33+
- "lib/google-cloud-hypercompute_cluster-v1beta.rb"
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
# frozen_string_literal: true
2+
3+
# Copyright 2025 Google LLC
4+
#
5+
# Licensed under the Apache License, Version 2.0 (the "License");
6+
# you may not use this file except in compliance with the License.
7+
# You may obtain a copy of the License at
8+
#
9+
# https://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# Unless required by applicable law or agreed to in writing, software
12+
# distributed under the License is distributed on an "AS IS" BASIS,
13+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14+
# See the License for the specific language governing permissions and
15+
# limitations under the License.
16+
17+
# Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18+
19+
toys_version! ">= 0.15.3"
20+
21+
if ENV["RUBY_COMMON_TOOLS"]
22+
common_tools_dir = File.expand_path ENV["RUBY_COMMON_TOOLS"]
23+
load File.join(common_tools_dir, "toys", "gapic")
24+
else
25+
load_git remote: "https://github.com/googleapis/ruby-common-tools.git",
26+
path: "toys/gapic",
27+
update: true
28+
end
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
--no-private
2+
--title="Cluster Director V1BETA API"
3+
--exclude _pb\.rb$
4+
--markup markdown
5+
--markup-provider redcarpet
6+
7+
./lib/**/*.rb
8+
./proto_docs/**/*.rb
9+
-
10+
README.md
11+
LICENSE.md
12+
AUTHENTICATION.md
Lines changed: 122 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,122 @@
1+
# Authentication
2+
3+
The recommended way to authenticate to the google-cloud-hypercompute_cluster-v1beta library is to use
4+
[Application Default Credentials (ADC)](https://cloud.google.com/docs/authentication/application-default-credentials).
5+
To review all of your authentication options, see [Credentials lookup](#credential-lookup).
6+
7+
## Quickstart
8+
9+
The following example shows how to set up authentication for a local development
10+
environment with your user credentials.
11+
12+
**NOTE:** This method is _not_ recommended for running in production. User credentials
13+
should be used only during development.
14+
15+
1. [Download and install the Google Cloud CLI](https://cloud.google.com/sdk).
16+
2. Set up a local ADC file with your user credentials:
17+
18+
```sh
19+
gcloud auth application-default login
20+
```
21+
22+
3. Write code as if already authenticated.
23+
24+
For more information about setting up authentication for a local development environment, see
25+
[Set up Application Default Credentials](https://cloud.google.com/docs/authentication/provide-credentials-adc#local-dev).
26+
27+
## Credential Lookup
28+
29+
The google-cloud-hypercompute_cluster-v1beta library provides several mechanisms to configure your system.
30+
Generally, using Application Default Credentials to facilitate automatic
31+
credentials discovery is the easist method. But if you need to explicitly specify
32+
credentials, there are several methods available to you.
33+
34+
Credentials are accepted in the following ways, in the following order or precedence:
35+
36+
1. Credentials specified in method arguments
37+
2. Credentials specified in configuration
38+
3. Credentials pointed to or included in environment variables
39+
4. Credentials found in local ADC file
40+
5. Credentials returned by the metadata server for the attached service account (GCP)
41+
42+
### Configuration
43+
44+
You can configure a path to a JSON credentials file, either for an individual client object or
45+
globally, for all client objects. The JSON file can contain credentials created for
46+
[workload identity federation](https://cloud.google.com/iam/docs/workload-identity-federation),
47+
[workforce identity federation](https://cloud.google.com/iam/docs/workforce-identity-federation), or a
48+
[service account key](https://cloud.google.com/docs/authentication/provide-credentials-adc#local-key).
49+
50+
Note: Service account keys are a security risk if not managed correctly. You should
51+
[choose a more secure alternative to service account keys](https://cloud.google.com/docs/authentication#auth-decision-tree)
52+
whenever possible.
53+
54+
To configure a credentials file for an individual client initialization:
55+
56+
```ruby
57+
require "google/cloud/hypercompute_cluster/v1beta"
58+
59+
client = ::Google::Cloud::HypercomputeCluster::V1beta::HypercomputeCluster::Client.new do |config|
60+
config.credentials = "path/to/credentialfile.json"
61+
end
62+
```
63+
64+
To configure a credentials file globally for all clients:
65+
66+
```ruby
67+
require "google/cloud/hypercompute_cluster/v1beta"
68+
69+
::Google::Cloud::HypercomputeCluster::V1beta::HypercomputeCluster::Client.configure do |config|
70+
config.credentials = "path/to/credentialfile.json"
71+
end
72+
73+
client = ::Google::Cloud::HypercomputeCluster::V1beta::HypercomputeCluster::Client.new
74+
```
75+
76+
### Environment Variables
77+
78+
You can also use an environment variable to provide a JSON credentials file.
79+
The environment variable can contain a path to the credentials file or, for
80+
environments such as Docker containers where writing files is not encouraged,
81+
you can include the credentials file itself.
82+
83+
The JSON file can contain credentials created for
84+
[workload identity federation](https://cloud.google.com/iam/docs/workload-identity-federation),
85+
[workforce identity federation](https://cloud.google.com/iam/docs/workforce-identity-federation), or a
86+
[service account key](https://cloud.google.com/docs/authentication/provide-credentials-adc#local-key).
87+
88+
Note: Service account keys are a security risk if not managed correctly. You should
89+
[choose a more secure alternative to service account keys](https://cloud.google.com/docs/authentication#auth-decision-tree)
90+
whenever possible.
91+
92+
The environment variables that google-cloud-hypercompute_cluster-v1beta
93+
checks for credentials are:
94+
95+
* `GOOGLE_CLOUD_CREDENTIALS` - Path to JSON file, or JSON contents
96+
* `GOOGLE_APPLICATION_CREDENTIALS` - Path to JSON file
97+
98+
```ruby
99+
require "google/cloud/hypercompute_cluster/v1beta"
100+
101+
ENV["GOOGLE_APPLICATION_CREDENTIALS"] = "path/to/credentialfile.json"
102+
103+
client = ::Google::Cloud::HypercomputeCluster::V1beta::HypercomputeCluster::Client.new
104+
```
105+
106+
### Local ADC file
107+
108+
You can set up a local ADC file with your user credentials for authentication during
109+
development. If credentials are not provided in code or in environment variables,
110+
then the local ADC credentials are discovered.
111+
112+
Follow the steps in [Quickstart](#quickstart) to set up a local ADC file.
113+
114+
### Google Cloud Platform environments
115+
116+
When running on Google Cloud Platform (GCP), including Google Compute Engine
117+
(GCE), Google Kubernetes Engine (GKE), Google App Engine (GAE), Google Cloud
118+
Functions (GCF) and Cloud Run, credentials are retrieved from the attached
119+
service account automatically. Code should be written as if already authenticated.
120+
121+
For more information, see
122+
[Set up ADC for Google Cloud services](https://cloud.google.com/docs/authentication/provide-credentials-adc#attached-sa).
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
# Release History
2+

0 commit comments

Comments
 (0)