mirror of
https://github.com/zhigang1992/firebase-tools.git
synced 2026-05-13 09:17:27 +08:00
50 lines
1.4 KiB
JavaScript
50 lines
1.4 KiB
JavaScript
"use strict";
|
|
|
|
var api = require("../api");
|
|
var logger = require("../logger");
|
|
var FirebaseError = require("../error");
|
|
|
|
function _getDefaultBucket(projectId) {
|
|
return api
|
|
.request("GET", "/v1/apps/" + projectId, {
|
|
auth: true,
|
|
origin: api.appengineOrigin,
|
|
})
|
|
.then(
|
|
function(resp) {
|
|
if (resp.body.defaultBucket === "undefined") {
|
|
logger.debug("Default storage bucket is undefined.");
|
|
return Promise.reject(
|
|
new FirebaseError(
|
|
"Your project is being set up. Please wait a minute before deploying again."
|
|
)
|
|
);
|
|
}
|
|
return Promise.resolve(resp.body.defaultBucket);
|
|
},
|
|
function(err) {
|
|
logger.info(
|
|
"\n\nThere was an issue deploying your functions. Verify that your project has a Google App Engine instance setup at https://console.cloud.google.com/appengine and try again. If this issue persists, please contact support."
|
|
);
|
|
return Promise.reject(err);
|
|
}
|
|
);
|
|
}
|
|
|
|
function _uploadSource(source, uploadUrl) {
|
|
return api.request("PUT", uploadUrl, {
|
|
data: source.stream,
|
|
headers: {
|
|
"Content-Type": "application/zip",
|
|
"x-goog-content-length-range": "0,104857600",
|
|
},
|
|
json: false,
|
|
origin: api.storageOrigin,
|
|
});
|
|
}
|
|
|
|
module.exports = {
|
|
getDefaultBucket: _getDefaultBucket,
|
|
upload: _uploadSource,
|
|
};
|