firebase-tools 10.2.2 → 10.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/commands/ext-configure.js +58 -4
- package/lib/commands/ext-export.js +4 -9
- package/lib/commands/ext-install.js +63 -4
- package/lib/commands/ext-uninstall.js +9 -0
- package/lib/commands/ext-update.js +55 -2
- package/lib/config.js +6 -3
- package/lib/deploy/extensions/planner.js +6 -6
- package/lib/deploy/functions/backend.js +10 -1
- package/lib/deploy/functions/checkIam.js +4 -4
- package/lib/deploy/functions/prepare.js +2 -1
- package/lib/deploy/functions/release/fabricator.js +4 -4
- package/lib/deploy/functions/release/planner.js +34 -20
- package/lib/deploy/functions/runtimes/discovery/v1alpha1.js +6 -1
- package/lib/deploy/functions/runtimes/node/index.js +27 -0
- package/lib/deploy/functions/runtimes/node/parseTriggers.js +24 -8
- package/lib/deploy/functions/services/firebaseAlerts.js +30 -0
- package/lib/deploy/functions/services/index.js +9 -1
- package/lib/deploy/functions/services/storage.js +10 -4
- package/lib/deploy/functions/triggerRegionHelper.js +1 -1
- package/lib/emulator/constants.js +1 -0
- package/lib/emulator/controller.js +9 -7
- package/lib/emulator/extensions/validation.js +37 -2
- package/lib/emulator/extensionsEmulator.js +44 -9
- package/lib/emulator/functionsEmulator.js +13 -8
- package/lib/emulator/functionsEmulatorShared.js +17 -10
- package/lib/emulator/storage/apis/firebase.js +312 -335
- package/lib/emulator/storage/apis/gcloud.js +238 -113
- package/lib/emulator/storage/crc.js +5 -1
- package/lib/emulator/storage/errors.js +9 -0
- package/lib/emulator/storage/files.js +161 -304
- package/lib/emulator/storage/index.js +27 -73
- package/lib/emulator/storage/metadata.js +63 -49
- package/lib/emulator/storage/multipart.js +62 -0
- package/lib/emulator/storage/persistence.js +78 -0
- package/lib/emulator/storage/rules/config.js +33 -0
- package/lib/emulator/storage/rules/manager.js +81 -0
- package/lib/emulator/storage/rules/utils.js +48 -0
- package/lib/emulator/storage/server.js +2 -2
- package/lib/emulator/storage/upload.js +106 -0
- package/lib/extensions/emulator/optionsHelper.js +35 -3
- package/lib/extensions/extensionsHelper.js +19 -10
- package/lib/extensions/manifest.js +109 -13
- package/lib/extensions/paramHelper.js +5 -4
- package/lib/functions/env.js +4 -6
- package/lib/functions/events/v2.js +11 -0
- package/lib/gcp/cloudfunctions.js +18 -6
- package/lib/gcp/cloudfunctionsv2.js +30 -12
- package/lib/gcp/resourceManager.js +4 -4
- package/lib/serve/functions.js +2 -1
- package/lib/utils.js +14 -1
- package/npm-shrinkwrap.json +2 -2
- package/package.json +1 -1
- package/lib/deploy/extensions/params.js +0 -42
- package/lib/deploy/functions/eventTypes.js +0 -10
package/lib/utils.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.assertIsStringOrUndefined = exports.assertIsNumber = exports.assertIsString = exports.assertDefined = exports.thirtyDaysFromNow = exports.isRunningInWSL = exports.isCloudEnvironment = exports.datetimeString = exports.createDestroyer = exports.promiseWithSpinner = exports.setupLoggers = exports.tryParse = exports.tryStringify = exports.promiseProps = exports.promiseWhile = exports.promiseAllSettled = exports.getFunctionsEventProvider = exports.endpoint = exports.makeActiveProject = exports.streamToString = exports.stringToStream = exports.explainStdin = exports.allSettled = exports.reject = exports.logLabeledError = exports.logLabeledWarning = exports.logWarning = exports.logLabeledBullet = exports.logBullet = exports.logLabeledSuccess = exports.logSuccess = exports.addSubdomain = exports.addDatabaseNamespace = exports.getDatabaseViewDataUrl = exports.getDatabaseUrl = exports.envOverride = exports.getInheritedOption = exports.consoleUrl = exports.envOverrides = void 0;
|
|
3
|
+
exports.groupBy = exports.assertIsStringOrUndefined = exports.assertIsNumber = exports.assertIsString = exports.assertDefined = exports.thirtyDaysFromNow = exports.isRunningInWSL = exports.isCloudEnvironment = exports.datetimeString = exports.createDestroyer = exports.promiseWithSpinner = exports.setupLoggers = exports.tryParse = exports.tryStringify = exports.promiseProps = exports.promiseWhile = exports.promiseAllSettled = exports.getFunctionsEventProvider = exports.endpoint = exports.makeActiveProject = exports.streamToString = exports.stringToStream = exports.explainStdin = exports.allSettled = exports.reject = exports.logLabeledError = exports.logLabeledWarning = exports.logWarning = exports.logLabeledBullet = exports.logBullet = exports.logLabeledSuccess = exports.logSuccess = exports.addSubdomain = exports.addDatabaseNamespace = exports.getDatabaseViewDataUrl = exports.getDatabaseUrl = exports.envOverride = exports.getInheritedOption = exports.consoleUrl = exports.envOverrides = void 0;
|
|
4
4
|
const _ = require("lodash");
|
|
5
5
|
const url = require("url");
|
|
6
6
|
const clc = require("cli-color");
|
|
@@ -393,3 +393,16 @@ function assertIsStringOrUndefined(val, message) {
|
|
|
393
393
|
}
|
|
394
394
|
}
|
|
395
395
|
exports.assertIsStringOrUndefined = assertIsStringOrUndefined;
|
|
396
|
+
function groupBy(arr, f) {
|
|
397
|
+
return arr.reduce((result, item) => {
|
|
398
|
+
const key = f(item);
|
|
399
|
+
if (result[key]) {
|
|
400
|
+
result[key].push(item);
|
|
401
|
+
}
|
|
402
|
+
else {
|
|
403
|
+
result[key] = [item];
|
|
404
|
+
}
|
|
405
|
+
return result;
|
|
406
|
+
}, {});
|
|
407
|
+
}
|
|
408
|
+
exports.groupBy = groupBy;
|
package/npm-shrinkwrap.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "firebase-tools",
|
|
3
|
-
"version": "10.
|
|
3
|
+
"version": "10.3.0",
|
|
4
4
|
"lockfileVersion": 2,
|
|
5
5
|
"requires": true,
|
|
6
6
|
"packages": {
|
|
7
7
|
"": {
|
|
8
8
|
"name": "firebase-tools",
|
|
9
|
-
"version": "10.
|
|
9
|
+
"version": "10.3.0",
|
|
10
10
|
"license": "MIT",
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"@google-cloud/pubsub": "^2.18.4",
|
package/package.json
CHANGED
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.readParams = void 0;
|
|
4
|
-
const path = require("path");
|
|
5
|
-
const logger_1 = require("../../logger");
|
|
6
|
-
const paramHelper_1 = require("../../extensions/paramHelper");
|
|
7
|
-
const error_1 = require("../../error");
|
|
8
|
-
const ENV_DIRECTORY = "extensions";
|
|
9
|
-
function readParams(args) {
|
|
10
|
-
const filesToCheck = [
|
|
11
|
-
`${args.instanceId}.env`,
|
|
12
|
-
...args.aliases.map((alias) => `${args.instanceId}.env.${alias}`),
|
|
13
|
-
`${args.instanceId}.env.${args.projectNumber}`,
|
|
14
|
-
`${args.instanceId}.env.${args.projectId}`,
|
|
15
|
-
];
|
|
16
|
-
if (args.checkLocal) {
|
|
17
|
-
filesToCheck.push(`${args.instanceId}.env.local`);
|
|
18
|
-
}
|
|
19
|
-
let noFilesFound = true;
|
|
20
|
-
const combinedParams = {};
|
|
21
|
-
for (const fileToCheck of filesToCheck) {
|
|
22
|
-
try {
|
|
23
|
-
const params = readParamsFile(args.projectDir, fileToCheck);
|
|
24
|
-
logger_1.logger.debug(`Successfully read params from ${fileToCheck}`);
|
|
25
|
-
noFilesFound = false;
|
|
26
|
-
Object.assign(combinedParams, params);
|
|
27
|
-
}
|
|
28
|
-
catch (err) {
|
|
29
|
-
logger_1.logger.debug(`${err}`);
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
if (noFilesFound) {
|
|
33
|
-
throw new error_1.FirebaseError(`No params file found for ${args.instanceId}`);
|
|
34
|
-
}
|
|
35
|
-
return combinedParams;
|
|
36
|
-
}
|
|
37
|
-
exports.readParams = readParams;
|
|
38
|
-
function readParamsFile(projectDir, fileName) {
|
|
39
|
-
const paramPath = path.join(projectDir, ENV_DIRECTORY, fileName);
|
|
40
|
-
const params = (0, paramHelper_1.readEnvFile)(paramPath);
|
|
41
|
-
return params;
|
|
42
|
-
}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.PUBSUB_V2_EVENT = exports.STORAGE_V2_EVENTS = void 0;
|
|
4
|
-
exports.STORAGE_V2_EVENTS = [
|
|
5
|
-
"google.cloud.storage.object.v1.finalized",
|
|
6
|
-
"google.cloud.storage.object.v1.archived",
|
|
7
|
-
"google.cloud.storage.object.v1.deleted",
|
|
8
|
-
"google.cloud.storage.object.v1.metadataUpdated",
|
|
9
|
-
];
|
|
10
|
-
exports.PUBSUB_V2_EVENT = "google.cloud.pubsub.topic.v1.messagePublished";
|