首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在VS代码和DevOps中调试Azure TypeScript自定义任务时如何设置输入变量

在VS代码和DevOps中调试Azure TypeScript自定义任务时如何设置输入变量
EN

Stack Overflow用户
提问于 2019-01-08 13:37:45
回答 1查看 1.2K关注 0票数 4

背景:--我正在为Azure DevOps构建一个自定义构建任务。

  • 此任务需要输入参数param1。
  • 它是用VS代码(v1.30.1)和TypeScript (TypeScript状态: v3.2.2)编写的。

问题当我尝试调试我的任务时,我不能为param1传递变量值。断点被击中,所以部分是工作的。

一些代码: index.ts

代码语言:javascript
复制
import tl = require('azure-pipelines-task-lib/task');

async function run() {
   try {
      let param1: string = tl.getInput('param1', true);        
      if (param1 === null || param1 === undefined) {
        console.log('Should not be here...');
      }        
   }
   catch (err) {
      tl.setResult(tl.TaskResult.Failed, err.message);
   }
}
run();

当我使用tsc;节点index.js从控制台运行它时,这很好,但是当使用VS代码调试器运行时,我似乎永远无法将一个值传递给param1,因此它会在'getInput‘方法中崩溃。

我的launch.json

代码语言:javascript
复制
{
"version": "0.2.0",
"configurations": [
    {
        "type": "node",
        "request": "launch",
        "name": "TaskName",
        "program": "${workspaceFolder}/Extensions\\BuildTasks\\TaskName\\index.ts",
        "outFiles": [
            "${workspaceFolder}/Extensions\\BuildTasks\\TaskName\\**\\*.js"
        ]
    }
]}

我也试着添加

代码语言:javascript
复制
"env": {
   "param1": "thisBeString"
 }

在输出文件下,但没有成功。

在绝望中我也试着用

代码语言:javascript
复制
"args": {
   "--param1": "thisBeString"
}

预期结果(失败.)

我还在我的tasks.json中使用了输入,但没有成功(according to this所以问答)

,所以问题是,在调试VS代码中的Azure DevOps扩展时,如何传递变量值。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-06-23 14:28:44

作为环境变量传递的Task输入参数的名称必须以INPUT_作为前缀。

在您的示例中,您将在启动环境中设置参数param1,如下所示:

launch.json

代码语言:javascript
复制
"env": {
   "INPUT_param1": "thisBeString"
 }

您不需要在代码中重命名param1,因为前缀在对getInput()的调用中会自动添加。

在运行时设置任务环境时,Azure DevOps管道也会添加前缀。这样做有助于减少与其他环境变量冲突的风险。

有关Azure管道任务SDK源代码参考,请参见此处:

https://github.com/microsoft/azure-pipelines-task-lib/blob/master/node/task.ts#L219

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54093047

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档