firebase-tools 9.22.0 → 10.0.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/CHANGELOG.md +5 -3
- package/lib/api.js +0 -1
- package/lib/commands/database-remove.js +2 -2
- package/lib/commands/database-set.js +2 -2
- package/lib/commands/database-update.js +2 -2
- package/lib/commands/firestore-delete.js +2 -2
- package/lib/commands/functions-delete.js +7 -1
- package/lib/commands/hosting-disable.js +3 -3
- package/lib/commands/remoteconfig-get.js +6 -5
- package/lib/deploy/extensions/params.js +39 -0
- package/lib/deploy/extensions/planner.js +11 -12
- package/lib/deploy/extensions/prepare.js +9 -1
- package/lib/deploy/functions/checkIam.js +65 -4
- package/lib/deploy/functions/containerCleaner.js +68 -77
- package/lib/deploy/functions/deploy.js +6 -7
- package/lib/deploy/functions/eventTypes.js +10 -0
- package/lib/deploy/functions/prepare.js +12 -1
- package/lib/deploy/functions/release/fabricator.js +6 -1
- package/lib/deploy/functions/release/index.js +6 -2
- package/lib/deploy/functions/release/reporter.js +4 -0
- package/lib/deploy/functions/runtimes/node/parseRuntimeAndValidateSDK.js +1 -1
- package/lib/deploy/functions/runtimes/node/parseTriggers.js +3 -9
- package/lib/deploy/functions/services/index.js +38 -0
- package/lib/deploy/functions/services/storage.js +43 -0
- package/lib/deploy/functions/triggerRegionHelper.js +6 -30
- package/lib/deploy/index.js +9 -1
- package/lib/emulator/auth/handlers.js +1 -1
- package/lib/emulator/auth/operations.js +27 -9
- package/lib/emulator/auth/widget_ui.js +17 -3
- package/lib/emulator/functionsEmulator.js +15 -1
- package/lib/emulator/functionsEmulatorRuntime.js +1 -1
- package/lib/emulator/functionsEmulatorShared.js +1 -0
- package/lib/emulator/pubsubEmulator.js +58 -45
- package/lib/emulator/storage/cloudFunctions.js +13 -6
- package/lib/ensureApiEnabled.js +11 -14
- package/lib/extensions/askUserForParam.js +32 -8
- package/lib/extensions/emulator/triggerHelper.js +1 -0
- package/lib/functions/env.js +2 -2
- package/lib/gcp/cloudfunctions.js +8 -6
- package/lib/gcp/cloudfunctionsv2.js +35 -3
- package/lib/gcp/docker.js +29 -1
- package/lib/gcp/location.js +44 -0
- package/lib/gcp/storage.js +48 -32
- package/lib/init/features/functions/index.js +3 -3
- package/lib/init/features/hosting/github.js +3 -0
- package/lib/init/features/project.js +2 -1
- package/lib/projectUtils.js +10 -1
- package/package.json +5 -5
- package/templates/init/functions/javascript/package.lint.json +1 -1
- package/templates/init/functions/javascript/package.nolint.json +1 -1
- package/templates/init/functions/typescript/package.lint.json +1 -1
- package/templates/init/functions/typescript/package.nolint.json +1 -1
|
@@ -5,7 +5,7 @@ const logger_1 = require("../../../logger");
|
|
|
5
5
|
const prompt_1 = require("../../../prompt");
|
|
6
6
|
const requirePermissions_1 = require("../../../requirePermissions");
|
|
7
7
|
const previews_1 = require("../../../previews");
|
|
8
|
-
const
|
|
8
|
+
const ensureApiEnabled_1 = require("../../../ensureApiEnabled");
|
|
9
9
|
module.exports = async function (setup, config, options) {
|
|
10
10
|
var _a, _b;
|
|
11
11
|
logger_1.logger.info();
|
|
@@ -17,8 +17,8 @@ module.exports = async function (setup, config, options) {
|
|
|
17
17
|
if (projectId) {
|
|
18
18
|
await requirePermissions_1.requirePermissions(Object.assign(Object.assign({}, options), { project: projectId }));
|
|
19
19
|
await Promise.all([
|
|
20
|
-
|
|
21
|
-
|
|
20
|
+
ensureApiEnabled_1.ensure(projectId, "cloudfunctions.googleapis.com", "unused", true),
|
|
21
|
+
ensureApiEnabled_1.ensure(projectId, "runtimeconfig.googleapis.com", "unused", true),
|
|
22
22
|
]);
|
|
23
23
|
}
|
|
24
24
|
const choices = [
|
|
@@ -31,6 +31,9 @@ async function initGitHub(setup, config, options) {
|
|
|
31
31
|
if (!setup.projectId) {
|
|
32
32
|
return utils_1.reject("Could not determine Project ID, can't set up GitHub workflow.", { exit: 1 });
|
|
33
33
|
}
|
|
34
|
+
if (!setup.config.hosting) {
|
|
35
|
+
return utils_1.reject(`Didn't find a Hosting config in firebase.json. Run ${cli_color_1.bold("firebase init hosting")} instead.`);
|
|
36
|
+
}
|
|
34
37
|
logger_1.logger.info();
|
|
35
38
|
const gitRoot = getGitFolderPath();
|
|
36
39
|
GIT_DIR = path.join(gitRoot, ".git");
|
|
@@ -72,7 +72,7 @@ async function doSetup(setup, config, options) {
|
|
|
72
72
|
logger_1.logger.info(`but for now we'll just set up a default project.`);
|
|
73
73
|
logger_1.logger.info();
|
|
74
74
|
const projectFromRcFile = _.get(setup.rcfile, "projects.default");
|
|
75
|
-
if (projectFromRcFile) {
|
|
75
|
+
if (projectFromRcFile && !options.project) {
|
|
76
76
|
utils.logBullet(`.firebaserc already has a default project, using ${projectFromRcFile}.`);
|
|
77
77
|
const rcProject = await projects_1.getFirebaseProject(projectFromRcFile);
|
|
78
78
|
setup.projectId = rcProject.projectId;
|
|
@@ -81,6 +81,7 @@ async function doSetup(setup, config, options) {
|
|
|
81
81
|
}
|
|
82
82
|
let projectMetaData;
|
|
83
83
|
if (options.project) {
|
|
84
|
+
logger_1.logger.debug(`Using project from CLI flag: ${options.project}`);
|
|
84
85
|
projectMetaData = await projects_1.getFirebaseProject(options.project);
|
|
85
86
|
}
|
|
86
87
|
else {
|
package/lib/projectUtils.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.needProjectNumber = exports.needProjectId = exports.getProjectId = void 0;
|
|
3
|
+
exports.getAliases = exports.needProjectNumber = exports.needProjectId = exports.getProjectId = void 0;
|
|
4
4
|
const projects_1 = require("./management/projects");
|
|
5
5
|
const clc = require("cli-color");
|
|
6
6
|
const marked = require("marked");
|
|
@@ -48,3 +48,12 @@ async function needProjectNumber(options) {
|
|
|
48
48
|
return options.projectNumber;
|
|
49
49
|
}
|
|
50
50
|
exports.needProjectNumber = needProjectNumber;
|
|
51
|
+
function getAliases(options, projectId) {
|
|
52
|
+
if (options.rc.hasProjects) {
|
|
53
|
+
return Object.entries(options.rc.projects)
|
|
54
|
+
.filter((entry) => entry[1] === projectId)
|
|
55
|
+
.map((entry) => entry[0]);
|
|
56
|
+
}
|
|
57
|
+
return [];
|
|
58
|
+
}
|
|
59
|
+
exports.getAliases = getAliases;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "firebase-tools",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "10.0.0",
|
|
4
4
|
"description": "Command-Line Interface for Firebase",
|
|
5
5
|
"main": "./lib/index.js",
|
|
6
6
|
"bin": {
|
|
@@ -55,7 +55,7 @@
|
|
|
55
55
|
],
|
|
56
56
|
"preferGlobal": true,
|
|
57
57
|
"engines": {
|
|
58
|
-
"node": ">=
|
|
58
|
+
"node": ">= 12"
|
|
59
59
|
},
|
|
60
60
|
"author": "Firebase (https://firebase.google.com/)",
|
|
61
61
|
"license": "MIT",
|
|
@@ -94,7 +94,7 @@
|
|
|
94
94
|
"chokidar": "^3.0.2",
|
|
95
95
|
"cjson": "^0.3.1",
|
|
96
96
|
"cli-color": "^1.2.0",
|
|
97
|
-
"cli-table": "
|
|
97
|
+
"cli-table": "0.3.11",
|
|
98
98
|
"commander": "^4.0.1",
|
|
99
99
|
"configstore": "^5.0.1",
|
|
100
100
|
"cors": "^2.8.5",
|
|
@@ -138,7 +138,7 @@
|
|
|
138
138
|
"universal-analytics": "^0.4.16",
|
|
139
139
|
"unzipper": "^0.10.10",
|
|
140
140
|
"update-notifier": "^5.1.0",
|
|
141
|
-
"uuid": "^3.
|
|
141
|
+
"uuid": "^8.3.2",
|
|
142
142
|
"winston": "^3.0.0",
|
|
143
143
|
"winston-transport": "^4.4.0",
|
|
144
144
|
"ws": "^7.2.3"
|
|
@@ -182,7 +182,7 @@
|
|
|
182
182
|
"@types/tmp": "^0.1.0",
|
|
183
183
|
"@types/triple-beam": "^1.3.0",
|
|
184
184
|
"@types/unzipper": "^0.10.0",
|
|
185
|
-
"@types/uuid": "^3.
|
|
185
|
+
"@types/uuid": "^8.3.1",
|
|
186
186
|
"@types/winston": "^2.4.4",
|
|
187
187
|
"@types/ws": "^7.2.3",
|
|
188
188
|
"@typescript-eslint/eslint-plugin": "^4.12.0",
|