Развертывание узла службы приложений Azure с модулем пакета исправлений

Я пытаюсь запустить пакет исправлений во время развертывания приложения Node в службах приложений Azure (развернутый с непрерывной интеграцией из BitBucket). Сценарий пакета исправлений работает нормально локально (на Mac), но не работает в Azure (Windows). Модуль пакета исправлений установлен в node_modules, но сценарий после установки завершается сбоем со следующей ошибкой:

Команда: «D: \ home \ site \ deployments \ tools \ deploy.cmd» Обработка развертывания node.js. Создание app_offline.htm KuduSync.NET из: 'D: \ home \ site \ repository' в: 'D: \ home \ site \ wwwroot' Удаление app_offline.htm Ищем app.js/server.js в корне сайта. С помощью сценария запуска app.js Создан web.config. В файле package.json не указаны ограничения версии движка node.js. Приложение node.js будет работать с версией node.js по умолчанию 14.16.0. Выбранная версия npm 6.14.11

my-app@1.0.0 после установки D:\home\site\wwwroot patch-package

'patch-package' не распознается как внутренняя или внешняя команда, работающая программа или командный файл. npm ERR! код ELIFECYCLE npm ERR!errno 1 npm ERR! rs-email-yelp@1.0.0 после установки : patch-packagenpm ERR! Статус выхода 1

А вот и мой (упрощенный) файл package.json:

      {
  "name": "my-app",
  "version": "1.0.0",
  "description": "",
  "main": "app.js",
  "private": true,
  "dependencies": {
    ...
    "patch-package": "^6.4.4",
    ...
  },
  "scripts": {
    "postinstall": "patch-package"
  }
}

Я получаю ту же ошибку, когда пытаюсь запустить вручную npm i в командной строке Kudu.

2 ответа

Решение

Если у кого-то еще есть эта проблема, вот что решило ее для меня:

- остановил веб-приложение - удалил папку node_modules - запустил новое развертывание из репозитория git (который переустановил все модули)

Все вернулось в норму.

В случае, если кто-то еще столкнется с той же проблемой, что и у меня...

я добавил вdevDependencies, но Azure работаетnpm i --productionтак и не установился.

Изменениеpatch-packageБыть вdependenciesисправил это для меня.

Другие вопросы по тегам