1

有没有人有自定义 kudu 以运行 npm、bower 和 typescript 的示例,将 gulp/grunt 脚本编译为 CI 过程的一部分,用于 asp.Net 应用程序?

我有一个 webslot,它的部署源配置了我的 repo 的一个分支。在推送到 repo 时,webslot 同步。我尝试自定义 deploy.cmd 以运行,但根据我安装的 npm/node 版本出现错误。

是否有另一种方法可以强制在 asp.net 站点的 web 插槽中运行 npm/node 的版本?我试过指定这些应用程序设置,

WEBSITE_NODE_DEFAULT_VERSION = 4.4.3
WEBSITE_NPM_DEFAULT_VERSION = 3.8.9

但跑步npm -v给了我 1.1.37

并运行node -v给我 v0.10.28 和以下错误

Window title cannot be longer than 1023 characters.
At line:1 char:1
+ node -v
+ ~~~~~~~
    + CategoryInfo          : InvalidArgument: (:) [], RuntimeException
    + FullyQualifiedErrorId : Argument

在 d:\home\site\wwwroot 中运行 npm install 也会失败

PS D:\home\site\wwwroot> npm install
npm WARN package.json basrat.org@1.0.0 No README.md file found!
npm http GET https://registry.npmjs.org/typings
npm http GET https://registry.npmjs.org/gulp-tslint
npm http GET https://registry.npmjs.org/gulp-bower
npm http GET https://registry.npmjs.org/gulp-debug
npm http GET https://registry.npmjs.org/gulp-sourcemaps
npm http GET https://registry.npmjs.org/gulp-rimraf
npm http GET https://registry.npmjs.org/gulp-inject
npm http GET https://registry.npmjs.org/gulp
npm http GET https://registry.npmjs.org/rimraf
npm http GET https://registry.npmjs.org/gulp-typescript
npm http GET https://registry.npmjs.org/gulp-debug
npm http GET https://registry.npmjs.org/gulp-rimraf
npm http GET https://registry.npmjs.org/gulp-bower
npm http GET https://registry.npmjs.org/gulp
npm http GET https://registry.npmjs.org/gulp-inject
npm http GET https://registry.npmjs.org/gulp-sourcemaps
npm http GET https://registry.npmjs.org/gulp-tslint
npm http GET https://registry.npmjs.org/rimraf
npm http GET https://registry.npmjs.org/typings
npm http GET https://registry.npmjs.org/gulp-typescript
npm http GET https://registry.npmjs.org/gulp-rimraf
npm http GET https://registry.npmjs.org/gulp-debug
npm ERR! Error: SSL Error: CERT_UNTRUSTED
npm ERR!     at ClientRequest.<anonymous> (D:\Program Files (x86)\nodejs\node_modules\npm\node_modules\request\main.js:440:26)
npm ERR!     at ClientRequest.g (events.js:156:14)
npm ERR!     at ClientRequest.emit (events.js:67:17)
npm ERR!     at HTTPParser.parserOnIncomingClient (http.js:1256:7)
npm ERR!     at HTTPParser.parserOnHeadersComplete [as onHeadersComplete] (http.js:91:29)
npm ERR!     at CleartextStream.socketOnData (http.js:1288:20)
npm ERR!     at CleartextStream._push (tls.js:375:27)
npm ERR!     at SecurePair.cycle (tls.js:734:20)
npm ERR!     at EncryptedStream.write (tls.js:130:13)
npm ERR!     at Socket.ondata (stream.js:38:26)
npm ERR!  [Error: SSL Error: CERT_UNTRUSTED]
npm ERR! You may report this log at:
npm ERR!     <http://github.com/isaacs/npm/issues>
npm ERR! or email it to:
npm ERR!     <npm-@googlegroups.com>

npm ERR! System Windows_NT 6.2.9200
npm ERR! command "D:\\Program Files (x86)\\nodejs\\\\node.exe" "D:\\Program Files (x86)\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "install"
npm ERR! cwd D:\home\site\wwwroot
npm ERR! node -v v0.6.20
npm ERR! npm -v 1.1.37
npm ERR! message SSL Error: CERT_UNTRUSTED
npm http GET https://registry.npmjs.org/gulp-bower
npm http GET https://registry.npmjs.org/gulp
npm http GET https://registry.npmjs.org/rimraf
npm http GET https://registry.npmjs.org/gulp-sourcemaps
npm http GET https://registry.npmjs.org/gulp-inject
npm http GET https://registry.npmjs.org/gulp-tslint
npm http GET https://registry.npmjs.org/typings
npm http GET https://registry.npmjs.org/gulp-typescript

我应该在存储库文件夹中运行所有操作命令/脚本吗?然后将所有内容复制到 wwwroot 文件夹?

4

3 回答 3

1

对于“CERT_UNTRUSTED”错误,您可以使用以下 cmd 绕过 https:

npm config set strict-ssl false

或执行这个:

process.env['NODE_TLS_REJECT_UNAUTHORIZED'] = '0';
于 2016-05-03T08:11:48.870 回答
1

Azure Web Apps 运行时似乎没有 nodejs 版本4.4.3,您登录应用程序的 Kudu 控制台站点,在 URL 处https://<your_web_app_name>.scm.azurewebsites.net/DebugConsole,将目录更改为D:\Program Files (x86)\nodejs>,您可以找到所有可用的 nodejs 版本列表。

这是文件夹列表:

Mode                LastWriteTime     Length Name                              
----                -------------     ------ ----                              
d----         4/17/2016   4:06 AM            0.10.18                           
d----         4/17/2016   4:06 AM            0.10.21                           
d----         4/17/2016   4:06 AM            0.10.24                           
d----         4/17/2016   4:05 AM            0.10.26                           
d----         4/17/2016   4:05 AM            0.10.28                           
d----         4/17/2016   4:05 AM            0.10.29                           
d----         4/17/2016   4:05 AM            0.10.31                           
d----         4/17/2016   4:05 AM            0.10.32                           
d----         4/17/2016   4:04 AM            0.10.40                           
d----         4/17/2016   3:49 AM            0.10.5                            
d----         4/17/2016   4:04 AM            0.12.0                            
d----         4/17/2016   4:04 AM            0.12.2                            
d----         4/17/2016   4:04 AM            0.12.3                            
d----         4/17/2016   4:04 AM            0.12.6                            
d----         4/17/2016   4:07 AM            0.6.20                            
d----         4/17/2016   4:08 AM            0.8.19                            
d----         4/17/2016   4:07 AM            0.8.2                             
d----         4/17/2016   4:06 AM            0.8.26                            
d----         4/17/2016   4:06 AM            0.8.27                            
d----         4/17/2016   4:06 AM            0.8.28                            
d----         4/17/2016   4:04 AM            4.0.0                             
d----         4/17/2016   4:04 AM            4.1.0                             
d----         4/17/2016   4:04 AM            4.1.2                             
d----         4/17/2016   4:04 AM            4.2.1                             
d----         4/17/2016   4:04 AM            4.2.2                             
d----         4/17/2016   4:04 AM            4.2.3                             
d----         4/17/2016   4:04 AM            4.2.4                             
d----         4/17/2016   4:04 AM            4.3.0                             
d----         4/17/2016   4:04 AM            4.3.2                             
d----         4/17/2016   4:04 AM            4.4.0                             
d----         4/17/2016   4:04 AM            4.4.1                             
d----         4/17/2016   4:03 AM            5.0.0                             
d----         4/17/2016   4:03 AM            5.1.1                             
d----         4/17/2016   4:03 AM            5.3.0                             
d----         4/17/2016   4:03 AM            5.4.0                             
d----         4/17/2016   4:03 AM            5.5.0                             
d----         4/17/2016   4:03 AM            5.6.0                             
d----         4/17/2016   4:03 AM            5.7.0                             
d----         4/17/2016   4:03 AM            5.7.1                             
d----         4/17/2016   4:03 AM            5.8.0                             
d----         4/17/2016   4:02 AM            5.9.1                             
d----         4/29/2016   7:46 PM            6.0.0

请尝试将应用设置修改WEBSITE_NODE_DEFAULT_VERSION为上述可用版本。

任何进一步的问题,请随时告诉我。

于 2016-05-03T08:33:43.127 回答
0

您可以创建自定义部署脚本来下载您需要的任何工具并调用它们以完全按照您的需要部署您的站点。

于 2016-05-03T18:44:03.327 回答