Skip to content

Commit 8287cec

Browse files
authored
Fix --only firestore:rules,firestore:indexes edge case (#6966)
* Fix --only firestore:rules,firestore:indexes edge case * Added changelog entry
1 parent 3dce5d8 commit 8287cec

2 files changed

Lines changed: 12 additions & 2 deletions

File tree

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
1+
- Fixes bug where `firebase deploy --only firestore:rules,firestore:indexes` does not update rules and indexes. (#6966)
12
- Add Firebase console link after creating or restoring a Firestore database (#6949)

src/deploy/firestore/prepare.ts

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -72,12 +72,21 @@ function prepareIndexes(
7272
export default async function (context: any, options: any): Promise<void> {
7373
if (options.only) {
7474
const targets = options.only.split(",");
75+
76+
// Used for edge case when deploying to a named database
77+
// https://github.com/firebase/firebase-tools/pull/6129
7578
const excludeRules = targets.indexOf("firestore:indexes") >= 0;
7679
const excludeIndexes = targets.indexOf("firestore:rules") >= 0;
80+
81+
// Used for edge case when deploying --only firestore:rules,firestore:indexes
82+
// https://github.com/firebase/firebase-tools/issues/6857
83+
const includeRules = targets.indexOf("firestore:rules") >= 0;
84+
const includeIndexes = targets.indexOf("firestore:indexes") >= 0;
85+
7786
const onlyFirestore = targets.indexOf("firestore") >= 0;
7887

79-
context.firestoreIndexes = !excludeIndexes || onlyFirestore;
80-
context.firestoreRules = !excludeRules || onlyFirestore;
88+
context.firestoreIndexes = !excludeIndexes || includeIndexes || onlyFirestore;
89+
context.firestoreRules = !excludeRules || includeRules || onlyFirestore;
8190
} else {
8291
context.firestoreIndexes = true;
8392
context.firestoreRules = true;

0 commit comments

Comments
 (0)