首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在gitlab ci yaml中读取json文件并使用if else命令?

如何在gitlab ci yaml中读取json文件并使用if else命令?
EN

Stack Overflow用户
提问于 2019-10-04 13:11:02
回答 1查看 2.2K关注 0票数 1

我有一个yaml文件,我有一个对yaml file.Respond文件的响应,有一条消息part.and,如果消息为真,则返回yaml文件的作业成功,如果消息写入错误,则返回yaml文件不成功。

代码语言:javascript
复制
variables:
  NUGET_PATH: 'C:\Tools\Nuget\nuget.exe'
  MSBUILD_PATH: 'C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\MSBuild\Current\Bin\amd64\msbuild.exe'
  SOLUTION_PATH: 'Textbox_ComboBox.sln'

stages:
  - build
  - job1
  - job2

before_script:
  - "cd Source"

build_job:
  stage: build
  except:
    - schedules
  script:
    - '& "$env:NUGET_PATH" restore'
    - '& "$env:MSBUILD_PATH" "$env:SOLUTION_PATH" /nologo /t:Rebuild /p:Configuration=Debug'

job1:
  stage: job1
  script:
    - 'curl adress1'
    -  -  if [ "$message" == "SAP transfer started. Please check in db" ]; then exit 0; else exit 1; fi


job2:
  stage: trigger_SAP_service
  when: delayed
  start_in: 5 minutes
  only:
    - schedules
  script:
    - 'curl adress2'

如果是yaml文件,respond.It应该是作业succeed.Because响应消息,如果命令消息相同。

代码语言:javascript
复制
Skipping Git submodules setup
Authenticating with credentials from job payload (GitLab Registry)
$ cd Source
$ curl adress1
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed

  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
100   146    0   146    0     0    877      0 --:--:-- --:--:-- --:--:--   879
{"status":200,"message":"SAP transfer started. Please check in db","errorCode":0,"timestamp":"2019-10-04T07:59:58.436+0300","responseObject":null}$ if ( [ '$message' == 'SAP transfer started. Please check in db' ] ); then exit 0; else exit 1; fi
ERROR: Job failed: exit code 1
EN

回答 1

Stack Overflow用户

发布于 2019-10-04 19:01:51

您在条件中使用的message变量为空。

您需要将curl响应赋给您的message变量:

代码语言:javascript
复制
message=$(curl -Ss adress1)

然后测试$message的内容

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

https://stackoverflow.com/questions/58230264

复制
相关文章

相似问题

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