Azure devops 在Azure DevOps版本中使用ask部署时出错 脚本

Azure devops 在Azure DevOps版本中使用ask部署时出错 脚本,azure-devops,alexa-skills-kit,ask-cli,Azure Devops,Alexa Skills Kit,Ask Cli,我正在尝试运行ask deploy在Azure DevOps中从ubuntu-20.04发布代理部署Alexa技能。我正在使用AWS Shell脚本任务,根据描述 在Bash中运行shell脚本,设置AWS凭据和区域 使用标准环境将信息导入shell环境 密钥AWS_访问密钥ID、AWS_机密密钥、AWS_访问密钥、AWS_会话令牌和 阿苏地区 我在DevOps中将凭据设置为服务连接,因此它确实可以安全访问这些值。因此,现在该任务公开了我的访问密钥、机密和区域,我只添加了一个脚本来导出(我认为)

我正在尝试运行
ask deploy
在Azure DevOps中从
ubuntu-20.04
发布代理部署Alexa技能。我正在使用AWS Shell脚本任务,根据描述

在Bash中运行shell脚本,设置AWS凭据和区域 使用标准环境将信息导入shell环境 密钥AWS_访问密钥ID、AWS_机密密钥、AWS_访问密钥、AWS_会话令牌和 阿苏地区

我在DevOps中将凭据设置为服务连接,因此它确实可以安全访问这些值。因此,现在该任务公开了我的访问密钥、机密和区域,我只添加了一个脚本来导出(我认为)成功执行所需的最后两个环境变量:

export ASK\u REFRESH\u TOKEN=“$(ASK\u REFRESH\u TOKEN)”
导出ASK\U供应商\U ID=“$(ASK\U供应商\U ID)”
为了确保它正常工作,我在脚本中添加了
ask smapi get vendor list
,并获得了预期的输出,其中显示了我的供应商ID、名称和角色。酷,它一定在工作

问题 现在当
ask deploy
时,我得到以下错误:

CliError:在ask-resources.json中找不到技能包src

而我似乎无法绕过它

我已经试过了。。。
  • 下载构建工件并在本地运行
    ask deploy
    。这是可行的,所以我知道构建或技能包的组成没有问题
  • 更新刷新令牌
  • 验证是否从正确的目录调用了该命令
  • 验证目录是否包含正确的文件
  • 问题: 如何解决该错误并从发布代理成功地
    ask deploy

    参考文献 我使用的是ASK-CLI v2.16.0

    这是我的ask-resources.json,以防有用。这个错误提到了这个文件

    {
    “askcliResourcesVersion”:“2020-03-31”,
    “概况”:{
    “默认值”:{
    “技能元数据”:{
    “src”:“../skill package”
    },
    “代码”:{
    “默认值”:{
    “src”:“/lambda”
    }
    },
    “skillInfrastructure”:{
    “用户配置”:{
    “运行时”:“nodejs12.x”,
    “处理程序”:“index.handler”,
    “templatePath”:“/infrastructure/cfn deployer/skill stack.yaml”,
    “awsRegion”:“us-east-1”
    },
    “类型”:“@ask cli/cfn部署器”
    }
    }
    }
    }
    
    发布作业定义:

    发布日志:

    ####Task Permissions
    Permissions for this task to call AWS service APIs depend on the activities in the supplied script.
    2020-09-29T12:27:05.4760730Z ==============================================================================
    2020-09-29T12:27:05.6858528Z Configuring credentials for task
    2020-09-29T12:27:05.6863319Z ...configuring AWS credentials from service endpoint 'redacted'
    2020-09-29T12:27:05.6863708Z ...endpoint defines standard access/secret key credentials
    2020-09-29T12:27:05.6879415Z Configuring region for task
    2020-09-29T12:27:05.6882489Z ...configured to use region us-east-1, defined in task.
    2020-09-29T12:27:05.6917304Z [command]/usr/bin/bash /home/vsts/work/_temp/awsshellscript_2266.sh
    2020-09-29T12:27:09.2056323Z npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142
    2020-09-29T12:27:15.3303791Z npm WARN deprecated har-validator@5.1.5: this library is no longer supported
    2020-09-29T12:27:20.4277268Z /usr/local/bin/ask -> /usr/local/lib/node_modules/ask-cli/bin/ask.js
    2020-09-29T12:27:20.4466577Z 
    2020-09-29T12:27:20.4475010Z > dtrace-provider@0.8.8 install /usr/local/lib/node_modules/ask-cli/node_modules/dtrace-provider
    2020-09-29T12:27:20.4476929Z > node-gyp rebuild || node suppress-error.js
    2020-09-29T12:27:20.4477558Z 
    2020-09-29T12:27:20.8448748Z gyp WARN EACCES current user ("nobody") does not have permission to access the dev dir "/root/.cache/node-gyp/12.18.4"
    2020-09-29T12:27:20.8507717Z gyp WARN EACCES attempting to reinstall using temporary dev dir "/usr/local/lib/node_modules/ask-cli/node_modules/dtrace-provider/.node-gyp"
    2020-09-29T12:27:20.8519281Z gyp WARN install got an error, rolling back install
    2020-09-29T12:27:20.8535248Z gyp WARN install got an error, rolling back install
    2020-09-29T12:27:20.8551818Z gyp ERR! configure error 
    2020-09-29T12:27:20.8555760Z gyp ERR! stack Error: EACCES: permission denied, mkdir '/usr/local/lib/node_modules/ask-cli/node_modules/dtrace-provider/.node-gyp'
    2020-09-29T12:27:20.8559344Z gyp ERR! System Linux 5.4.0-1025-azure
    2020-09-29T12:27:20.8560532Z gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
    2020-09-29T12:27:20.8571334Z gyp ERR! cwd /usr/local/lib/node_modules/ask-cli/node_modules/dtrace-provider
    2020-09-29T12:27:20.8572691Z gyp ERR! node -v v12.18.4
    2020-09-29T12:27:20.8573700Z gyp ERR! node-gyp -v v5.1.0
    2020-09-29T12:27:20.8574490Z gyp ERR! not ok 
    2020-09-29T12:27:20.9460739Z 
    2020-09-29T12:27:20.9462350Z > ask-cli@2.16.1 postinstall /usr/local/lib/node_modules/ask-cli
    2020-09-29T12:27:20.9463103Z > node postinstall.js
    2020-09-29T12:27:20.9463477Z 
    2020-09-29T12:27:20.9839474Z 
    2020-09-29T12:27:20.9840246Z ================================================================================
    2020-09-29T12:27:20.9844532Z ASK CLI collects telemetry to better understand customer needs. You can
    2020-09-29T12:27:20.9845738Z OPT OUT and disable telemetry by setting the 'share_usage' key to 'false' 
    2020-09-29T12:27:20.9846574Z in '~/.ask/cli_config'.
    2020-09-29T12:27:20.9846928Z 
    2020-09-29T12:27:20.9847554Z Learn more: https://developer.amazon.com/docs/alexa/smapi/ask-cli-telemetry.html
    2020-09-29T12:27:20.9848513Z ================================================================================ 
    2020-09-29T12:27:20.9848861Z 
    2020-09-29T12:27:20.9933073Z + ask-cli@2.16.1
    2020-09-29T12:27:20.9933710Z added 233 packages from 243 contributors in 13.497s
    2020-09-29T12:27:21.2144126Z /home/vsts/work/r1/a/BuildArtifact/drop/projectname
    2020-09-29T12:27:21.2154300Z total 44
    2020-09-29T12:27:21.2155074Z drwxr-xr-x 6 vsts docker  4096 Sep 29 12:27 .
    2020-09-29T12:27:21.2155522Z drwxr-xr-x 3 vsts docker  4096 Sep 29 12:27 ..
    2020-09-29T12:27:21.2156597Z drwxr-xr-x 2 vsts docker  4096 Sep 29 12:27 .ask
    2020-09-29T12:27:21.2157145Z -rw-r--r-- 1 vsts docker    46 Sep 29 12:27 .gitignore
    2020-09-29T12:27:21.2157583Z -rw-r--r-- 1 vsts docker 11358 Sep 29 12:27 LICENSE.txt
    2020-09-29T12:27:21.2158041Z -rw-r--r-- 1 vsts docker   537 Sep 29 12:27 ask-resources.json
    2020-09-29T12:27:21.2158482Z drwxr-xr-x 3 vsts docker  4096 Sep 29 12:27 infrastructure
    2020-09-29T12:27:21.2158917Z drwxr-xr-x 3 vsts docker  4096 Sep 29 12:27 lambda
    2020-09-29T12:27:21.2159407Z drwxr-xr-x 4 vsts docker  4096 Sep 29 12:27 skill-package
    2020-09-29T12:27:22.9397766Z {
    2020-09-29T12:27:22.9398441Z   "vendors": [
    2020-09-29T12:27:22.9398789Z     {
    2020-09-29T12:27:22.9399540Z       "id": "***",
    2020-09-29T12:27:22.9399972Z       "name": "redacted",
    2020-09-29T12:27:22.9400496Z       "roles": [
    2020-09-29T12:27:22.9400870Z         "ROLE_DEVELOPER"
    2020-09-29T12:27:22.9401186Z       ]
    2020-09-29T12:27:22.9401481Z     }
    2020-09-29T12:27:22.9402201Z   ]
    2020-09-29T12:27:22.9402497Z }
    2020-09-29T12:27:23.9621180Z [Error]: CliError: Skill package src is not found in ask-resources.json.
    

    正如您进行故障排除一样,
    构建或技能包的组成没有问题。
    因此,此错误应该与任务/管道配置更相关,请与我们分享有关构建定义的详细信息,YAML文件或经典视图的屏幕截图。@LeoLiu MSFT屏幕截图为您的更新添加了感谢。你的
    ask resources.json
    在哪里?在文件夹
    BuildArtifact/drop/projectname
    中?而且路径
    BuildArtifact/drop/projectname
    看起来不像常规路径。对吗?你能分享你的构建日志吗?@LeoLiu MSFT添加了发布日志