- release_tracks: [ALPHA, BETA, GA] help_text: brief: Update the index configuration of the given field. description: | Update the index configuration of the given field. This creates an exemption for the field in question, allowing one to modify the field's index settings and override the defaults. # Note: currently all indexes are collection scoped; collection group scoped indexes are not yet # supported. When they are, these examples will need to be updated to include queryScope keys in # addition to order/arrayConfig. examples: | The following command creates an exemption for the `timestamp` field in the `Events` collection group, in which all indexes are disabled: $ {command} timestamp \ --collection-group=Events --disable-indexes $ {command} timestamp \ --database=(default) --collection-group=Events --disable-indexes The following command creates an exemption for the `timestamp` field in the `Events` collection group, in which the list of indexes is explicitly set to [ASCENDING, DESCENDING]: $ {command} timestamp \ --collection-group=Events \ --index=order=ASCENDING \ --index=order=DESCENDING The following command clears the exemption on the `timestamp` field in the `Events` collection group, so that the field will return to inheriting its index settings from its ancestors: $ {command} timestamp \ --collection-group=Events --clear-exemption request: collection: firestore.projects.databases.collectionGroups.fields static_fields: updateMask: indexConfig resource_method_params: googleFirestoreAdminV1Field.name: '{__relative_name__}' modify_request_hooks: - googlecloudsdk.command_lib.firestore.util:ValidateFieldUpdateRequest - googlecloudsdk.command_lib.firestore.util:AddIndexConfigToUpdateRequest async: collection: firestore.projects.databases.operations api_version: v1 update: read_modify_update: false disable_auto_field_mask: true arguments: resource: help_text: Field to update. # Since it's currently not possible to update database default or collection group default # index settings, we use 'field' here instead of 'field_with_default' spec: !REF googlecloudsdk.command_lib.firestore.resources:field params: - group: mutex: true required: true params: - _REF_: googlecloudsdk.command_lib.firestore.flags:index - _REF_: googlecloudsdk.command_lib.firestore.flags:disable_indexes - _REF_: googlecloudsdk.command_lib.firestore.flags:clear_exemption