首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >IBM uDeploy客户端导入请求问题

IBM uDeploy客户端导入请求问题
EN

Stack Overflow用户
提问于 2020-03-13 15:16:23
回答 1查看 557关注 0票数 0

我已经有一段时间在我的PowerShell CI构建过程中对uDeploy命令行客户机(udclient)进行了脚本化的调用。

我的udclient调用的脚本如下:

代码语言:javascript
复制
udclient.cmd -weburl $uDeployServer -authtoken $authToken "importVersions" $requestJson

..。我的JSON文件($requestJson)内容如下所示:

代码语言:javascript
复制
{
  "component": "[uDeploy component name]",
  "properties": {
    "version": "[component version]"
  }
}

直到最近,这些请求以及随后的udclient版本部署请求一直按预期工作。然而,几周前,版本导入请求开始神秘地失败。

在uDeploy UI中,在组件配置的选项卡中,我可以看到失败的导入请求。

但是,当我打开输出日志进行检查时,它是空的。错误日志仅包含以下内容:

“版本导入失败的原因如下:JSONObject”值“未找到”。

UI导入uDeploy手动版本仍然可以像预期的那样工作

此外,一旦应用了手动干预来完成CI构建中的版本导入,后续版本部署请求就会执行,而不会出现任何问题

我不是Java专家,但在我看来,这个错误似乎表明JSON文件有问题。但是,要测试我的JSON (我使用的是PS 5,直到PS 6才使用test ),执行以下PowerShell脚本:

代码语言:javascript
复制
try {
    $json = Get-Content -Path [component version import].json | ConvertFrom-Json
    Write-Host "JSON is valid."
} catch {
    Write-Host "JSON is dodgy."
}

..。返回:

JSON是有效的。

那么,怎么回事?这是否与JSON文件中的编码有关?想法和洞察力得到赞赏;谢谢你的关注。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-03-18 13:11:17

我为本机PowerShell编写了REST调用脚本:

代码语言:javascript
复制
Invoke-RestMethod -Uri $uDeployServer/cli/component/integrate" -Method Put -Headers $headers -ContentType "application/json" -Body $json

请求是毫无问题地发送的,但不幸的是,与udclient调用一样,同样的错误仍然存在。

查看uDeploy UI中的失败版本导入请求记录,除了错误日志中的模糊消息外,请求输入属性只显示两个属性(成功的请求显示来自组件配置的许多属性):

provided)

  • description

  • 版本(从JSON文件(值空白)中正确读取值

我在请求JSON中添加了一个新的属性“description”;文件内容现在如下所示:

代码语言:javascript
复制
{
  "component":"[uDeploy component name]",
  "properties":{
    "version":"[component version]",
    "description":"[description]"
  }
}

嘿普雷斯托!成功执行版本导入请求。

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

https://stackoverflow.com/questions/60672985

复制
相关文章

相似问题

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