использовать функции Google Cloud с реестром, отличным от Registry.npmjs.org

В настоящее время я пытаюсь развернуть облачную функцию node.js с помощью (частного) пакета из реестра пакетов GitHub (npm.pkg.github.com).

Согласно официальным документам, использование закрытых модулей поддерживается добавлением файла .npmrc с токеном доступа, однако в нем нет упоминаний об использовании пользовательских реестров.

Файл .npmrc, который я загружаю в Cloud Functions вместе с package.json и остальным кодом, выглядит следующим образом:

registry=https://npm.pkg.github.com/<myorg>
//npm.pkg.github.com/:_authToken=<mytoken>

Однако развертывание не выполняется из-за:

Build failed: {"error": {"canonicalCode": "INVALID_ARGUMENT", "errorMessage": "`npm_install` had stderr output:
npm ERR! code E404
npm ERR! 404 Not Found - GET https://registry.npmjs.org/<mypackage> - Not found
npm ERR! 404 
npm ERR! 404 '<mypackage>' is not in the npm registry.
npm ERR! 404 You should bug the author to publish it (or use the name yourself!)

Итак, как вы можете видеть, определение реестра из .npmrc, похоже, игнорируется, так как оно пытается извлечь пакет из npmjs.org, где он действительно не существует.

Облачные функции Google не поддерживают пользовательские реестры?


Изменить: добавлен подробный вывод журнала

Deploying function (may take a while - up to 2 minutes)...failed.
DEBUG: (gcloud.functions.deploy) OperationError: code=3, message=Build failed: {"error": {"canonicalCode": "INVALID_ARGUMENT", "errorMessage": "`npm_install` had stderr output:
npm ERR! code E404
npm ERR! 404 Not Found - GET https://registry.npmjs.org/<redacted> - Not found
npm ERR! 404 
npm ERR! 404  '<redacted>' is not in the npm registry.
npm ERR! 404 You should bug the author to publish it (or use the name yourself!)
npm ERR! 404 It was specified as a dependency of 'functions'
npm ERR! 404 
npm ERR! 404 Note that you can also install from a
npm ERR! 404 tarball, folder, http url, or git url.

npm ERR! A complete log of this run can be found in:
npm ERR!     /builder/home/.npm/_logs/2020-02-12T14_14_22_565Z-debug.log
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! @ preinstall: `./install-function-dependencies`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the @ preinstall script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /builder/home/.npm/_logs/2020-02-12T14_14_22_586Z-debug.log

error: `npm_install` returned code: 1", "errorType": "InternalError", "errorId": "BDE5340F"}}
Traceback (most recent call last):
  File "/usr/local/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/lib/googlecloudsdk/calliope/cli.py", line 981, in Execute
    resources = calliope_command.Run(cli=self, args=args)
  File "/usr/local/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/lib/googlecloudsdk/calliope/backend.py", line 807, in Run
    resources = command_instance.Run(args)
  File "/usr/local/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/lib/surface/functions/deploy.py", line 307, in Run
    return _Run(args, track=self.ReleaseTrack())
  File "/usr/local/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/lib/surface/functions/deploy.py", line 263, in _Run
    op, do_every_poll=TryToSetInvokerPermission)
  File "/usr/local/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/lib/googlecloudsdk/api_lib/functions/util.py", line 306, in CatchHTTPErrorRaiseHTTPExceptionFn
    return func(*args, **kwargs)
  File "/usr/local/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/lib/googlecloudsdk/api_lib/functions/util.py", line 353, in WaitForFunctionUpdateOperation
    do_every_poll=do_every_poll)
  File "/usr/local/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/lib/googlecloudsdk/api_lib/functions/operations.py", line 137, in Wait
    _WaitForOperation(client, request, notice, do_every_poll)
  File "/usr/local/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/lib/googlecloudsdk/api_lib/functions/operations.py", line 111, in _WaitForOperation
    sleep_ms=SLEEP_MS)
  File "/usr/local/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/lib/googlecloudsdk/core/util/retry.py", line 219, in RetryOnResult
    result = func(*args, **kwargs)
  File "/usr/local/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/lib/googlecloudsdk/api_lib/functions/operations.py", line 70, in _GetOperationStatus
    raise exceptions.FunctionsError(OperationErrorToString(op.error))
FunctionsError: OperationError: code=3, message=Build failed: {"error": {"canonicalCode": "INVALID_ARGUMENT", "errorMessage": "`npm_install` had stderr output:
npm ERR! code E404
npm ERR! 404 Not Found - GET https://registry.npmjs.org/<redacted> - Not found
npm ERR! 404 
npm ERR! 404  '<redacted>' is not in the npm registry.
npm ERR! 404 You should bug the author to publish it (or use the name yourself!)
npm ERR! 404 It was specified as a dependency of 'functions'
npm ERR! 404 
npm ERR! 404 Note that you can also install from a
npm ERR! 404 tarball, folder, http url, or git url.

npm ERR! A complete log of this run can be found in:
npm ERR!     /builder/home/.npm/_logs/2020-02-12T14_14_22_565Z-debug.log
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! @ preinstall: `./install-function-dependencies`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the @ preinstall script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /builder/home/.npm/_logs/2020-02-12T14_14_22_586Z-debug.log

error: `npm_install` returned code: 1", "errorType": "InternalError", "errorId": "BDE5340F"}}

Всего 1 ответ


Это не проблема с облачными функциями, однако в npmjs.org, похоже, есть общая ошибка, вы можете проверить ее на таких форумах, как этот , чтобы увидеть больше.

Попробуйте еще раз, когда проблема в npmjs.org исчезнет.

Надеюсь, вы найдете это полезным!


Есть идеи?

10000