我正嘗試使用Azure的Git部署來構建和打包我的項目。Grunt安裝通過deploy.cmd文件在Azure Web應用程序部署上失敗
我創建下列文件
- .deployment
- deploy.cmd
- Gruntfile.js
- 的package.json
- bower.json
我ve遵循Jay Harris的blog post。下面給出的是deploy.cmd文件部署部分:
:: 2. Select node version
call :SelectNodeVersion
:: 3. Install npm packages
IF EXIST "%DEPLOYMENT_TARGET%\package.json" (
pushd "%DEPLOYMENT_TARGET%"
call :ExecuteCmd !NPM_CMD! install --production
IF !ERRORLEVEL! NEQ 0 goto error
popd
)
:: 4. Install bower packages
IF EXIST "%DEPLOYMENT_TARGET%\bower.json" (
call !NPM_CMD! install bower
IF !ERRORLEVEL! NEQ 0 goto error
call .\node_modules\.bin\bower install
IF !ERRORLEVEL! NEQ 0 goto error
)
:: 4. run grunt
IF EXIST "%DEPLOYMENT_TARGET%\Gruntfile.js" (
call !NPM_CMD! install grunt-cli
call .\node_modules\.bin\grunt --no-color clean common dist
IF !ERRORLEVEL! NEQ 0 goto error
)
部署失敗,以下錯誤:
Selected npm version 3.8.6
Updating iisnode.yml at D:\home\site\wwwroot\iisnode.yml
[email protected] D:\home\site\wwwroot
+-- [email protected] extraneous
npm WARN [email protected] requires a peer of [email protected]>=0.4.0 but none was installed.
+-- UNMET PEER DEPENDENCY [email protected]>=0.4.0
`-- [email protected] extraneous
[email protected] D:\home\site\repository
`-- [email protected] extraneous
[email protected] D:\home\site\repository
+-- [email protected] extraneous
`-- [email protected] extraneous
grunt-cli: The grunt command line interface (v1.2.0)
Fatal error: Unable to find local grunt.
If you're seeing this message, grunt hasn't been installed locally to
your project. For more information about installing and configuring grunt,
please see the Getting Started guide:
http://gruntjs.com/getting-started
An error has occurred during web site deployment.
npm WARN [email protected] requires a peer of [email protected]>=0.4.0 but none was installed.\r\nC:\Program Files (x86)\SiteExtensions\Kudu\55.50610.2267\bin\Scripts\starter.cmd deploy.cmd
我不知道還有什麼我需要在這裏做的就是它安裝。試圖通過網絡搜索類似的問題,但找不到任何具體的解決方案。如果有人能幫助我,這將是非常棒的。
我的package.json
{
"name": "myapp",
"private": true,
"devDependencies": {
"autoprefixer-core": "^5.2.1",
"grunt": "^0.4.5",
"grunt-angular-templates": "^0.5.7",
"grunt-concurrent": "^1.0.0",
"grunt-contrib-clean": "^0.6.0",
"grunt-contrib-compass": "^1.0.0",
"grunt-contrib-concat": "^0.5.0",
"grunt-contrib-connect": "^0.9.0",
"grunt-contrib-copy": "^0.7.0",
"grunt-contrib-cssmin": "^0.12.0",
"grunt-contrib-htmlmin": "^0.4.0",
"grunt-contrib-imagemin": "^1.0.0",
"grunt-contrib-jshint": "^0.11.0",
"grunt-contrib-uglify": "^0.7.0",
"grunt-contrib-watch": "^0.6.1",
"grunt-filerev": "^2.1.2",
"grunt-google-cdn": "^0.4.3",
"grunt-jscs": "^1.8.0",
"grunt-newer": "^1.1.0",
"grunt-ng-annotate": "^0.9.2",
"grunt-postcss": "^0.5.5",
"grunt-svgmin": "^2.0.0",
"grunt-usemin": "^3.0.0",
"grunt-wiredep": "^2.0.0",
"imagemin": "^5.2.1",
"jasmine-core": "^2.4.1",
"jit-grunt": "^0.9.1",
"jshint-stylish": "^1.0.0",
"karma": "^0.13.22",
"karma-jasmine": "^1.0.2",
"karma-phantomjs-launcher": "^1.0.0",
"phantomjs-prebuilt": "^2.1.7",
"readable-stream": "^2.1.4",
"through2": "^2.0.1",
"time-grunt": "^1.0.0",
"vinyl-fs": "^2.2.1"
},
"engines": {
"node": ">=0.10.0"
},
"scripts": {
"test": "karma start test\\karma.conf.js"
}
}
注意:到目前爲止,還沒有找到解決辦法,我要去Azure的支持團隊要弄清楚什麼我能做的。一旦找到任何解決方案,我會更新問題。
所以你說這沒有解決方案? – JPReddy
@JPReddy我在說,如果在測試了'grunt'確實已經正確安裝(本地或全局使用'-g')並且問題依然存在,那麼您需要檢查'grunt-cli'希望在哪裏找到'grunt ',如果這證明難以捉摸,請將案例升級到Azure並查看問題是否與他們的環境相關。 – VonC
你是對的,我想我已經升級到Azure支持團隊 – JPReddy