Firebase云功能在云构建部署后停止工作

Firebase云功能在云构建部署后停止工作,firebase,google-cloud-functions,google-cloud-build,Firebase,Google Cloud Functions,Google Cloud Build,我正在使用Cloud Build部署我的firebase项目(托管和云功能),该项目由github repo中的分支提交触发。部署成功,站点正常工作,但部署后云功能不会运行。它们甚至不会在被调用时显示在日志中,因此没有错误 我在UI中单击一个按钮,调用一个云函数,将一些数据保存到实时数据库中。调用函数的代码在try-catch中运行,catch代码运行。云函数的日志没有显示任何内容——该函数甚至没有运行。然后,当我从笔记本电脑而不是通过cloud build在本地部署项目时,单击按钮就会运行cl

我正在使用Cloud Build部署我的firebase项目(托管和云功能),该项目由github repo中的分支提交触发。部署成功,站点正常工作,但部署后云功能不会运行。它们甚至不会在被调用时显示在日志中,因此没有错误

我在UI中单击一个按钮,调用一个云函数,将一些数据保存到实时数据库中。调用函数的代码在try-catch中运行,catch代码运行。云函数的日志没有显示任何内容——该函数甚至没有运行。然后,当我从笔记本电脑而不是通过cloud build在本地部署项目时,单击按钮就会运行cloud函数,数据会保存到数据库中,日志表明该函数已被调用。但是,当我从cloud Build部署时,从前端触发事件时,不会调用任何云函数

只有当项目由云构建部署时,函数才会在调用时不运行。我想知道这是否可能是权限问题

前端代码:

 const createTeam = (payload) => {
  return async (dispatch, getState, getFirebase) => {
    debugger;
    const createTeam = getFirebase().functions().httpsCallable("createTeam");
    console.log("create team===>", createTeam);
    try {
      console.log("about to run");
      await createTeam(payload);
      dispatch(
        sendNotification({
          severity: "success",
          message: "Team Created",
          isOpen: true,
        })
      );
    } catch (e) {
      dispatch(
        sendNotification({
          severity: "error",
          message: "An error occurred and team was not created.",
          isOpen: true,
        })
      );
    }
  };
};
生成文件:

steps:
  - name: "gcr.io/cloud-builders/npm"
    dir: "functions"
    args: ["install"]
  # Install
  - name: "gcr.io/cloud-builders/npm"
    args: ["install"]
  # Build
  - name: "gcr.io/cloud-builders/npm"
    args: ["run", "build"]
  # Deploy
  - name: "gcr.io/$PROJECT_ID/firebase"
    args: ["deploy", "--project=$PROJECT_ID"]
从部署日志中:

    Hosting URL: xxxx
Project Console: xxxx
✔  Deploy complete!

✔  hosting[agile-boost]: release complete
i  hosting[agile-boost]: releasing new version...
✔  hosting[agile-boost]: version finalized
i  hosting[agile-boost]: finalizing version...
✔  functions[launchAssessments(us-central1)]: Successful update operation. 
✔  functions[createTeam(us-central1)]: Successful update operation. 
✔  functions[sendParticipantEmailWhenAssessmentOpens(us-central1)]: Successful update operation. 
✔  functions[completeAssessments(us-central1)]: Successful update operation. 
✔  functions[refreshMetricCategoryAvg(us-central1)]: Successful update operation. 
✔  functions[saveParticipantAnswer(us-central1)]: Successful update operation. 
✔  functions[updateParticipant(us-central1)]: Successful update operation. 
✔  functions[closeAssessmentsWhenTeamIsDeleted(us-central1)]: Successful update operation. 
✔  functions[getParticipantsData(us-central1)]: Successful update operation. 
✔  functions[createAccount(us-central1)]: Successful update operation. 
✔  functions[addParticipantToAssessment(us-central1)]: Successful update operation. 
✔  functions[createAssessment(us-central1)]: Successful update operation. 
✔  functions[reviseAssessmentMetrics(us-central1)]: Successful update operation. 
✔  functions[refreshMetricQuestionAvg(us-central1)]: Successful update operation. 
✔  functions[updateParticipantWhenTeamParticipantUpdates(us-central1)]: Successful update operation. 
✔  functions[refreshMetricTagAvg(us-central1)]: Successful update operation. 
✔  functions[updateMetricsWhenParticipantStatusChanges(us-central1)]: Successful update operation. 
✔  functions[addNewTeamParticipantToActiveAssessments(us-central1)]: Successful update operation. 
✔  functions[getSurveyData(us-central1)]: Successful update operation. 
i  functions: scheduler job firebase-schedule-completeAssessments-us-central1 is up to date, no changes required
i  functions: scheduler job firebase-schedule-launchAssessments-us-central1 is up to date, no changes required
✔  pubsub: required API pubsub.googleapis.com is enabled
✔  scheduler: required API cloudscheduler.googleapis.com is enabled
i  pubsub: ensuring required API pubsub.googleapis.com is enabled...
i  scheduler: ensuring required API cloudscheduler.googleapis.com is enabled...
i  functions: updating Node.js 10 function completeAssessments(us-central1)...
i  functions: updating Node.js 10 function launchAssessments(us-central1)...
i  functions: updating Node.js 10 function getParticipantData(us-central1)...
i  functions: updating Node.js 10 function getParticipantsData(us-central1)...
i  functions: updating Node.js 10 function closeAssessmentsWhenTeamIsDeleted(us-central1)...
i  functions: updating Node.js 10 function updateParticipantWhenTeamParticipantUpdates(us-central1)...
i  functions: updating Node.js 10 function updateMetricsWhenParticipantStatusChanges(us-central1)...
i  functions: updating Node.js 10 function sendParticipantEmailWhenAssessmentOpens(us-central1)...
i  functions: updating Node.js 10 function addNewTeamParticipantToActiveAssessments(us-central1)...
i  functions: updating Node.js 10 function saveParticipantAnswer(us-central1)...
i  functions: updating Node.js 10 function getSurveyData(us-central1)...
i  functions: updating Node.js 10 function updateParticipant(us-central1)...
i  functions: updating Node.js 10 function addParticipantToAssessment(us-central1)...
i  functions: updating Node.js 10 function createAssessment(us-central1)...
i  functions: updating Node.js 10 function createTeam(us-central1)...
i  functions: updating Node.js 10 function createAccount(us-central1)...
i  functions: updating Node.js 10 function reviseAssessmentMetrics(us-central1)...
i  functions: updating Node.js 10 function refreshMetricQuestionAvg(us-central1)...
i  functions: updating Node.js 10 function refreshMetricTagAvg(us-central1)...
i  functions: updating Node.js 10 function refreshMetricCategoryAvg(us-central1)...
✔  database: rules for database xxxx released successfully
i  database: releasing rules...
✔  hosting[agile-boost]: file upload complete
i  hosting: uploading new files [4/6] (66%)
i  hosting: hashing files [34/35] (97%)
i  hosting: hashing files [34/35] (97%)
i  hosting[agile-boost]: found 35 files in build
i  hosting[agile-boost]: beginning deploy...
✔  functions: functions folder uploaded successfully
i  functions: packaged functions (52.61 KB) for uploading
i  functions: preparing functions directory for uploading...
✔  functions: required API cloudbuild.googleapis.com is enabled
✔  functions: required API cloudfunctions.googleapis.com is enabled
i  functions: ensuring required API cloudbuild.googleapis.com is enabled...
i  functions: ensuring required API cloudfunctions.googleapis.com is enabled...
✔  database: rules syntax for database agile-boost is valid
i  database: checking rules syntax...
✔  functions: Finished running predeploy script.

> tsc
> functions@ build /workspace/functions

Running command: npm --prefix "$RESOURCE_DIR" run build

> tslint --project tsconfig.json
> functions@ lint /workspace/functions

Running command: npm --prefix "$RESOURCE_DIR" run lint
i  deploying database, functions, hosting

=== Deploying to 'xxxx'...

gcr.io/agile-boost/firebase:latest
Status: Downloaded newer image for gcr.io/agile-boost/firebase:latest
Digest: sha256:063a10dfecc2b3bb4245316fb89ae1588f594bb8bb6e950ecf6a9488015e20bb
38ee9b020816: Pull complete
ddf8c3713c7d: Pull complete
9819791ca1ba: Pull complete
19c9987a828c: Pull complete
40ba0f817ab5: Pull complete
8cdf70a16731: Pull complete
9819791ca1ba: Download complete
9819791ca1ba: Verifying Checksum
8cdf70a16731: Download complete
8cdf70a16731: Verifying Checksum
38ee9b020816: Download complete
38ee9b020816: Verifying Checksum
ddf8c3713c7d: Download complete
ddf8c3713c7d: Verifying Checksum
40ba0f817ab5: Download complete
40ba0f817ab5: Verifying Checksum
19c9987a828c: Download complete
19c9987a828c: Verifying Checksum
38ee9b020816: Waiting
ddf8c3713c7d: Waiting
9819791ca1ba: Waiting
38ee9b020816: Pulling fs layer
ddf8c3713c7d: Pulling fs layer
9819791ca1ba: Pulling fs layer
19c9987a828c: Pulling fs layer
40ba0f817ab5: Pulling fs layer
8cdf70a16731: Pulling fs layer
e5c5821cd889: Already exists
55abbc6cc158: Already exists
8439168fd8dc: Already exists
c159512f4cc2: Already exists
1b49aa113642: Already exists
4f250268ed6a: Already exists
latest: Pulling from agile-boost/firebase
Using default tag: latest
Pulling image: gcr.io/agile-boost/firebase

请编辑问题以显示部署代码和日志,以帮助我们观察您的观察结果。没有这些,一切都是猜测。理想情况下,我们应该能够使用您提供的信息重现行为。您如何观察“部署后云功能不会运行”?你确定日志是准确的吗?日志行看起来有问题。我希望“deploy complete”(部署完成)消息会最后出现。@DougStevenson,我在UI中单击一个按钮,调用一个云函数,该函数将一些数据保存到实时数据库中。调用函数的代码在try-catch中运行,catch代码运行。云函数的日志没有显示任何内容——该函数甚至没有运行。然后,当我从笔记本电脑而不是通过cloud build在本地部署项目时,单击按钮就会运行cloud函数,数据会保存到数据库中,日志表明该函数已被调用。所有这些信息以及函数的代码都应该在问题中。让我们非常清楚地了解您复制它所采取的步骤。部署中的日志看起来正常(除了顺序颠倒的事实)。您确定它部署在正确的位置吗?在Firebase控制台->函数->日志中,可能有云构建更新函数的新日志。有吗?