Развертывание узла службы приложений 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-package
npm 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
исправил это для меня.