我的Google Build脚本在构建Angular通用项目的服务器时陷入了困境。我正在尝试访问日志,也许这有助于解决问题。
编辑#1
这是一个Angular项目,这个构建是基于Firebase函数的Angular通用构建
Starting Step #6
Step #6: Already have image: node:12.3
Step #6:
Step #6: > supportfinity@0.0.0 stage-server /workspace
Step #6: > node --max_old_space_size=8000 ./node_modules/@angular/cli/bin/ng run sf-mini:server:stage
Step #6:
Step #6: Compiling angular2-query-builder : main as umd
Step #6: Killed
Step #6: npm ERR! code ELIFECYCLE
Step #6: npm ERR! errno 137
Step #6: npm ERR! supportfinity@0.0.0 stage-server: `node --max_old_space_size=8000 ./node_modules/@angular/cli/bin/ng run sf-mini:server:stage`
Step #6: npm ERR! Exit status 137
Step #6: npm ERR!
Step #6: npm ERR! Failed at the supportfinity@0.0.0 stage-server script.
Step #6: npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
Step #6:
Step #6: npm ERR! A complete log of this run can be found in:
Step #6: npm ERR! /builder/home/.npm/_logs/2020-10-05T12_48_55_502Z-debug.log
Finished Step #6
如何访问上面的日志。
这里还有构建yaml:
steps:
- name: 'gcr.io/cloud-builders/docker'
args: [ 'build', '-t' , 'gcr.io/$PROJECT_ID/firebase' , './dockerfiles/firebase']
- name: 'gcr.io/$PROJECT_ID/firebase'
args: [ 'use', '$_PROJECT_NAME','--token', '${_FIREBASE_TOKEN}']
- name: 'node:12.3'
entrypoint: npm
args: ['install']
- name: 'node:12.3'
entrypoint: npm
args: ['install','--prefix','functions']
- name: 'node:12.3'
entrypoint: npm
args: ['link']
- name: 'node:12.3'
entrypoint: npm
args: ['run-script','stage-browser']
- name: 'node:12.3'
entrypoint: npm
args: ['run-script','--debug','build-server'] <== this one which cause problem
- name: 'node:12.3'
entrypoint: npm
dir: 'functions'
args: ['run-script','copyAndRename']
- name: 'gcr.io/$PROJECT_ID/firebase'
args: [ 'deploy','--debug', '--token', '${_FIREBASE_TOKEN}']
timeout: 2000s
来自package.json 的build命令
"build-server": "node --max_old_space_size=16384 ./node_modules/@angular/cli/bin/ng run sf-mini:server:production",
"stage-browser": "node --max_old_space_size=8000 ./node_modules/@angular/cli/bin/ng build --prod --configuration=stage --aot --vendor-chunk --common-chunk --delete-output-path",
这可能是内存问题。有几个GitHub[1][2] 有错误代码137的问题,他们能够通过增加RAM来解决问题。
编辑:如注释中所述,您将无法访问/builder
日志,因为单独的VM运行构建步骤。
然而,这可能有助于您了解问题的原因。Firebase函数中的有效最大内存值为2GB,但您正在使用--max_old_space_size
将内存增加到16GB(内部(和8GB。这可能有助于解释为什么你会得到内存不足的代码。