微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Azure管道如何在脚本等待用户输入时检测管道何时停止

如何解决Azure管道如何在脚本等待用户输入时检测管道何时停止

我有一个正在执行脚本的管道,其中一些是3第三方脚本。 在这种情况下是Fastlane脚本。
现在在极少数情况下,Fastlane脚本期望用户输入值以输入标准输入。我的问题是如何检测何时停止脚本并等待输入。在这种情况下,我想抛出一个错误并使任务失败。
这是管道任务:

 - script:  |
     fastlane release --verbose projectName:${{parameters.projectName}} 
     echo 'Done invoking Fastfile'
    #failOnStderr: false 
    workingDirectory: '$(System.ArtifactsDirectory)/ios_artifacts'
    displayName: 'run fastlane'

它在此空闲状态下堆叠:

2020-10-12T06:46:27.5309820Z INFO [2020-10-12 06:46:27.52]: [32m------------------[0m
2020-10-12T06:46:27.5310570Z INFO [2020-10-12 06:46:27.53]: [32m--- Step: sigh ---[0m
2020-10-12T06:46:27.5311280Z INFO [2020-10-12 06:46:27.53]: [32m------------------[0m
2020-10-12T06:46:27.5362760Z 
2020-10-12T06:46:27.5386680Z +-------------------------------------+------------------------------+
2020-10-12T06:46:27.5387580Z |                      [32mSummary for sigh 2.162.0[0m                      |
2020-10-12T06:46:27.5388330Z +-------------------------------------+------------------------------+
2020-10-12T06:46:27.5389160Z | username                            | xxxx@xxxx.com       |
2020-10-12T06:46:27.5389530Z | app_identifier                      | com.xxxx.xxxx |
2020-10-12T06:46:27.5389950Z | team_id                             | xxxx                   |
2020-10-12T06:46:27.5390320Z | adhoc                               | false                        |
2020-10-12T06:46:27.5390730Z | developer_id                        | false                        |
2020-10-12T06:46:27.5391490Z | development                         | false                        |
2020-10-12T06:46:27.5391860Z | skip_install                        | false                        |
2020-10-12T06:46:27.5392280Z | force                               | false                        |
2020-10-12T06:46:27.5392650Z | ignore_profiles_with_different_name | false                        |
2020-10-12T06:46:27.5393070Z | skip_fetch_profiles                 | false                        |
2020-10-12T06:46:27.5393450Z | skip_certificate_verification       | false                        |
2020-10-12T06:46:27.5393860Z | platform                            | ios                          |
2020-10-12T06:46:27.5394230Z | readonly                            | false                        |
2020-10-12T06:46:27.5394630Z | fail_on_name_taken                  | false                        |
2020-10-12T06:46:27.5395400Z +-------------------------------------+------------------------------+
2020-10-12T06:46:27.5395640Z 
2020-10-12T06:46:27.5396350Z INFO [2020-10-12 06:46:27.53]: Starting login with user 'xxxx@xxxx.com'
2020-10-12T06:46:27.5559840Z Reading keychain entry,because either user or password were empty
2020-10-12T06:46:27.5560420Z Loading session from environment variable
2020-10-12T06:46:27.7305500Z Session loaded from environment variable is not valid. Continuing with normal login.
2020-10-12T06:46:28.7278420Z Two-factor Authentication (6 digits code) is enabled for account 'xxxx@xxxx.com'
2020-10-12T06:46:28.7279570Z More information about Two-factor Authentication: https://support.apple.com/en-us/HT204915
2020-10-12T06:46:28.7279880Z 
2020-10-12T06:46:28.7280520Z If you're running this in a non-interactive session (e.g. server or CI)
2020-10-12T06:46:28.7281300Z check out https://github.com/fastlane/fastlane/tree/master/spaceship#2-step-verification

我如何监视此状态?并失败了管道?

解决方法

我如何监视此状态?并失败了管道?

据我所知,这是不可能的。当前,azure devops管道还没有提供可以检测脚本等待输入并使管道失败的内置功能。对于任务timeoutInMinutes: number # how long to wait before timing out the task,它应该是一种简单的方法,使CacheLoadListener根据超时而失败,但似乎您不希望这样做。

您可以在我们的set the timeout网站上添加对此功能的请求,该网站是我们提供产品建议的主要论坛。提出建议后,您可以对此反馈进行投票并添加评论。如果产品小组查看了更新,则会提供更新。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。