feat: Add new gcloud commands, API clients, and third-party libraries across various services.

This commit is contained in:
2026-01-01 20:26:35 +01:00
parent 5e23cbece0
commit a19e592eb7
25221 changed files with 8324611 additions and 0 deletions

View File

@@ -0,0 +1,53 @@
# -*- coding: utf-8 -*- #
# Copyright 2022 Google LLC. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
"""Command group for Looker backups."""
from googlecloudsdk.calliope import base
@base.ReleaseTracks(base.ReleaseTrack.ALPHA, base.ReleaseTrack.GA)
@base.UniverseCompatible
class Backups(base.Group):
"""Manage Looker instances.
## EXAMPLES
To create a backup of an instance with the name `my-looker-instance` and in
the region `us-central1`, run:
$ {command} create --instance='my-looker-instance --region=us-central1'
To delete a backup with the name `looker-backup` that is a backup of an
instance with the name `my-looker-instance` and in the region `us-central1`,
run:
$ {command} delete looker-backup --instance=my-looker-instance
--region=us-central1
To display the details for a backup with the name `looker-backup` that is a
backup of an instance with the name `my-looker-instance` and in the region
`us-central1`, run:
$ {command} describe looker-backup --instance=my-looker-instance
--region=us-central1
To list all backups of an instance with the name
`my-looker-instance` and in the region `us-central1`, run:
$ {command} list --instance=my-looker-instance --region=us-central1
"""
pass

View File

@@ -0,0 +1,66 @@
# -*- coding: utf-8 -*- #
# Copyright 2022 Google LLC. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
"""Create a backup of a Looker instance."""
from googlecloudsdk.api_lib.looker import backups
from googlecloudsdk.api_lib.looker import utils
from googlecloudsdk.calliope import base
from googlecloudsdk.command_lib.looker import flags
from googlecloudsdk.core import properties
from googlecloudsdk.core import resources
_DETAILED_HELP = {
'DESCRIPTION': 'Create a backup of a Looker instance.',
'EXAMPLES': """ \
To create a backup of an instance with the name my-looker-instance, in
region us-central1 run:
$ {command} --instance='my-looker-instance' --region='us-central1'
""",
}
@base.UniverseCompatible
@base.ReleaseTracks(base.ReleaseTrack.ALPHA, base.ReleaseTrack.GA)
class CreateInstanceBackup(base.CreateCommand):
"""Create a backup of a Looker instance."""
detailed_help = _DETAILED_HELP
@staticmethod
def Args(parser):
"""Register flags for this command."""
flags.AddInstance(parser)
parser.add_argument(
'--region',
required=True,
help=(""" \
The name of the Looker region of the instance. Overrides the
default looker/region property value for this command invocation.
"""),
)
def Run(self, args):
parent = resources.REGISTRY.Parse(
args.instance,
params={
'projectsId': properties.VALUES.core.project.GetOrFail,
'locationsId': args.region,
},
api_version=utils.VERSION_MAP[self.ReleaseTrack()],
collection='looker.projects.locations.instances',
).RelativeName()
return backups.CreateBackup(parent, self.ReleaseTrack())

View File

@@ -0,0 +1,38 @@
- release_tracks: [ALPHA, GA]
help_text:
brief: |
Delete a backup of a Looker instance.
description: |
Delete a backup of a Looker instance.
This command can fail for the following reasons:
* The instance specified does not exist.
* The backup does not exist.
* The active account does not have permission to access the given
instance.
examples: |
To delete a backup with ID `c24ad631-ad83-42f0-9f98-41e2b493263e` on instance with name `my-looker-instance`, run:
$ {command} c24ad631-ad83-42f0-9f98-41e2b493263e --instance='my-looker-instance'
arguments:
resource:
spec: !REF googlecloudsdk.command_lib.looker.resources:backup
help_text: |
The instance of the backup to delete.
input:
confirmation_prompt: |
You are about to delete backup [{__name__}] in [{locationsId}].
Any associated data will be lost.
request:
ALPHA:
api_version: v1alpha2
GA:
api_version: v1
collection: looker.projects.locations.instances.backups
async:
collection: looker.projects.locations.operations

View File

@@ -0,0 +1,42 @@
- release_tracks: [ALPHA, GA]
help_text:
brief: |
Show metadata of a backup for a Looker instance.
description: |
Show metadata of a backup for a Looker instance.
Displays all metadata associated with a backup of a Looker instance given a valid backup and
instance name.
This command can fail for the following reasons:
* The instance specified does not exist.
* The backup specified does not exist.
* The active account does not have permission to access the given
instance and backups.
examples: |
To display the metadata for a backup with id of `c24ad631-ad83-42f0-9f98-41e2b493263e` on instance with name `my-looker-instance`, and in the region `us-central1`, run:
$ {command} c24ad631-ad83-42f0-9f98-41e2b493263e --instance='my-looker-instance' --region='us-central1'
arguments:
resource:
spec: !REF googlecloudsdk.command_lib.looker.resources:backup
help_text: |
The instance of the backup to describe.
request:
ALPHA:
api_version: v1alpha2
GA:
api_version: v1
collection: looker.projects.locations.instances.backups
output:
format: |
table(
name.basename():label=NAME:sort=2,
state:label=STATUS,
createTime.date(),
expireTime.date()
)

View File

@@ -0,0 +1,38 @@
- release_tracks: [ALPHA, GA]
help_text:
brief: |
List backups of a Looker instance.
description: |
List all backups of a Looker instance under the specified project and region.
To specify the maximum number of backups to list, use the --limit flag.
examples: |
To list up to five backups, of a Looker instance named `my-looker-instance` in the region `us-central1` run:
$ {command} --instance='my-looker-instance' --limit=5 --region='us-central1'
arguments:
resource:
spec: !REF googlecloudsdk.command_lib.looker.resources:instance
help_text: |
The instance of the backups to display.
request:
ALPHA:
api_version: v1alpha2
GA:
api_version: v1
collection: looker.projects.locations.instances.backups
response:
id_field: name
output:
format: |
table(
name.basename():label=NAME:sort=2,
state:label=STATUS,
createTime.date():sort=1:reverse,
expireTime.date()
)