使用Azure发布管道在Azure Linux vm上部署Node.js应用

时间:2019-07-24 05:34:13

标签: node.js linux azure-devops

我正在使用azure devops为nodejs应用程序创建CI和CD管道。
我使用azure发布管道将构建代码部署到azure linux vm,在这里我配置了部署组作业。
在部署组中,我使用了提取文件任务来解压缩构建文件。
解压缩可以正常工作,我的代码也可以在以下路径中部署:InstancePerOwnedImplementing<TInterface>();
之后,我想使用azure发布管道运行$(System.DefaultWorkingDirectory)/LearnCab-Manage(V1.5)-CI (1)/coreservices/ *.zip命令,为此任务,我需要对部署组作业进行重击并编写命令

pm2

但是未执行bash它将给出退出代码 cd $(System.DefaultWorkingDirectory)/LearnCab-Manage(V1.5)-CI (1)/coreservices/*.zip cd coreservices pm2 start server.js

1 个答案:

答案 0 :(得分:1)

  

它将给出退出代码2

此参数引起的错误是在第一行的命令中使用括号(。通常,括号用作组。无法在命令行中将其编译为普通字符。

要解决此问题,您需要使用\将括号作为普通字符转移:

cd $(System.DefaultWorkingDirectory)/LearnCab-Manage\(V1.5\)-CI \(1\)/coreservices/*.zip

现在,\(V1.5\)\(1\)可以正常翻译为(V1.5)(1)

而且,您可以在路径周围使用单引号或双引号:

cd "$(System.DefaultWorkingDirectory)/LearnCab-Manage(V1.5)-CI (1)/coreservices/*.zip"

cd '$(System.DefaultWorkingDirectory)/LearnCab-Manage(V1.5)-CI (1)/coreservices/*.zip'