firebase-tools
firebase-tools copied to clipboard
Deploying firestore:rules with firestore:indexes doesn't work
[REQUIRED] Environment info
firebase-tools: 13.4.0
Platform: Windows and Linux (GitHub Action)
[REQUIRED] Test case
Make changes to firestore.rules and try to deploy. See next section for more info.
[REQUIRED] Steps to reproduce
Make changes to firestore.rules, then:
Linux:
firebase deploy --only functions,firestore:rules,firestore:indexes,storage --project {project_id}
Windows:
firebase deploy --only 'firestore:rules,firestore:indexes' --project {project_id}
Neither of those commands will deploy changes to firestore.rules.
Here is the output of the last command:
i deploying storage, firestore
i storage: ensuring required API firebasestorage.googleapis.com is enabled...
+ storage: required API firebasestorage.googleapis.com is enabled
i firebase.storage: checking storage.rules for compilation errors...
+ firebase.storage: rules file storage.rules compiled successfully
i firestore: reading indexes from firestore.indexes.json...
i cloud.firestore: checking firestore.rules for compilation errors...
+ cloud.firestore: rules file firestore.rules compiled successfully
i storage: latest version of storage.rules already up to date, skipping upload...
+ storage: released rules storage.rules to firebase.storage
Now try this:
firebase deploy --only 'firestore:rules' --project {project_id}
firestore.rules will deploy.
Here is the output of the last command:
i deploying firestore
i firestore: reading indexes from firestore.indexes.json...
i cloud.firestore: checking firestore.rules for compilation errors...
+ cloud.firestore: rules file firestore.rules compiled successfully
i firestore: uploading rules firestore.rules...
+ firestore: released rules firestore.rules to cloud.firestore
[REQUIRED] Expected behavior
Changes to firestore.rules will deploy.
[REQUIRED] Actual behavior
Changes to firestore.rules do not deploy.
Hey @johnnyoshika, thanks for reaching out and providing a detailed report. From what I can tell based on the commands you shared, you’re trying to deploy both Firestore rules and Firestore indexes.
Could you try using firebase deploy --only firestore
to see if this would deploy both your Firestore rules and indexes without any issues? I’m using this docs as reference.
As @aalej mentioned, --only firestore
will do what you want here - however, we should definitely handle --only firestore:rules,firestore:indexes
smoothly as well. I suspect this should be a relatively easy fix - will take a crack at it later this week.