- release_tracks: [GA, BETA, ALPHA]
  help_text:
    brief: |
      Update a Filestore backup.
    description: |
      Update the metadata of a Filestore backup.

      This command can fail for the following reasons:
        * The backup specified does not exist.
        * The active account does not have permission to update the given
          backup.
    examples: |
      The following command updates the Filestore Backup named 'my-backup' in region
      us-central1 to change the description to 'A new description.'

        $ {command} my-backup --region=us-central1 --description="A new description."

  arguments:
    params:
    - arg_name: backup
      is_positional: true
      required: true
      help_text: |
        Arguments and flags that specify the Filestore backup you want to
        update.
    - arg_name: region
      required: true
      help_text: |
        Compute region (e.g. us-central1) for the backup.
    - arg_name: description
      api_field: backup.description
      help_text: |
        Description of the backup.
    additional_arguments_hook: googlecloudsdk.command_lib.filestore.update_util:UpdateLabelsFlags

  response:
    modify_response_hooks:
    - googlecloudsdk.command_lib.filestore.backups.update_util:FormatBackupUpdateResponse

  async:
    collection: file.projects.locations.operations

  request:
    ALPHA:
      api_version: v1p1alpha1
    BETA:
      api_version: v1beta1
    GA:
      api_version: v1
    display_resource_type: backup
    collection: file.projects.locations.backups
    modify_request_hooks:
    - googlecloudsdk.command_lib.filestore.backups.util:FormatBackupAccessRequest
    - googlecloudsdk.command_lib.filestore.backups.update_util:GetExistingBackup
    - googlecloudsdk.command_lib.filestore.backups.update_util:AddDescription
    - googlecloudsdk.command_lib.filestore.backups.update_util:UpdateLabels
