Azure脚本任务失败时出错错误:true,出现bash错误,该错误不是';没有这面旗子,我们就不能前进
我有有线行为 当任务中未设置failOnStderr:true时,一切正常,但Azure脚本任务失败时出错错误:true,出现bash错误,该错误不是';没有这面旗子,我们就不能前进,azure,azure-devops,azure-pipelines,azure-devops-pipelines,Azure,Azure Devops,Azure Pipelines,Azure Devops Pipelines,我有有线行为 当任务中未设置failOnStderr:true时,一切正常,但 当我使用failOnStderr:true像这样调用脚本任务时: - script: | echo 'Start invoking Fastfile' fastlane release --verbose projectName:${{parameters.projectName}} appIdentifier:${{parameters.appIdentifier}} versionNumbe
当我使用failOnStderr:true像这样调用脚本任务时:
- script: |
echo 'Start invoking Fastfile'
fastlane release --verbose projectName:${{parameters.projectName}} appIdentifier:${{parameters.appIdentifier}} versionNumber:${{parameters.versionNumber}} buildNumber:${{parameters.buildNumber}} plistFileFtpBasePath:${{parameters.plistFileFtpBasePath}} ArtifactsDirectory:$(System.ArtifactsDirectory)
echo 'Done invoking Fastfile'
failOnStderr: true
workingDirectory: '$(System.ArtifactsDirectory)/ios_artifacts'
displayName: 'create keychain invoke fastlane'
我得到了以下错误:
2020-09-30T07:54:45.8179430Z INFO [2020-09-30 07:54:45.81]: [32mfastlane.tools finished successfully 🎉[0m
2020-09-30T07:54:45.8917310Z Done invoking Fastfile
2020-09-30T07:54:45.8948720Z
2020-09-30T07:54:45.9020160Z ##[error]Bash wrote one or more lines to the standard error stream.
2020-09-30T07:54:45.9033610Z ##[error]/Users/runner/hostedtoolcache/Ruby/2.7.1/x64/lib/ruby/gems/2.7.0/gems/fastlane-2.161.0/fastlane_core/lib/fastlane_core/ui/interface.rb:141: warning: Using the last argument as keyword parameters is deprecated; maybe ** should be added to the call
/Users/runner/hostedtoolcache/Ruby/2.7.1/x64/lib/ruby/gems/2.7.0/gems/fastlane-2.161.0/fastlane_core/lib/fastlane_core/ui/errors/fastlane_error.rb:9: warning: The called method `initialize' is defined here
2020-09-30T07:54:45.9035550Z ##[error]security: SecKeychainSearchCopyNext: The specified item could not be found in the keychain.
2020-09-30T07:54:45.9037370Z ##[error]/Users/runner/hostedtoolcache/Ruby/2.7.1/x64/lib/ruby/gems/2.7.0/gems/fastlane-2.161.0/gym/lib/gym/generators/package_command_generator_xcode7.rb:154: warning: URI.escape is obsolete
2020-09-30T07:54:45.9040080Z ##[error]/Users/runner/hostedtoolcache/Ruby/2.7.1/x64/lib/ruby/gems/2.7.0/gems/fastlane-2.161.0/gym/lib/gym/generators/package_command_generator_xcode7.rb:155: warning: URI.escape is obsolete
/Users/runner/hostedtoolcache/Ruby/2.7.1/x64/lib/ruby/gems/2.7.0/gems/fastlane-2.161.0/gym/lib/gym/generators/package_command_generator_xcode7.rb:156: warning: URI.escape is obsolete
2020-09-30T07:54:45.9042740Z ##[error]warning: /Users/runner/Library/Developer/Xcode/Archives/2020-09-30/xxxx_2019.1.4.xxxx-xxxx.1.1.0.4_SPRINT_14 2020-09-30 07.51.27.xcarchive/BCSymbolMaps/1BD5CB31-31FC-328B-A827-73EA51BB6041.bcsymbolmap: No such file or directory: not unobfuscating.
2020-09-30T07:54:45.9045210Z ##[error]warning: /Users/runner/Library/Developer/Xcode/Archives/2020-09-30/xxxx_1.1.xxxx-xxxx.1.1.0.4_SPRINT_14 2020-09-30 07.51.27.xcarchive/BCSymbolMaps/9FCBA8ED-D8FD-3C16-9740-5E2A31F3E959.bcsymbolmap: No such file or directory: not unobfuscating.
2020-09-30T07:54:45.9047670Z ##[error]warning: /Users/runner/Library/Developer/Xcode/Archives/2020-09-30/xxxx_1.1.xxxx-xxxx.1.1.0.4_SPRINT_14 2020-09-30 07.51.27.xcarchive/BCSymbolMaps/999C2967-8A06-3CD5-82D7-D156E9440A0C.bcsymbolmap: No such file or directory: not unobfuscating.
2020-09-30T07:54:45.9050110Z ##[error]warning: /Users/runner/Library/Developer/Xcode/Archives/2020-09-30/xxxx_1.1.xxxx-xxxx.1.1.0.4_SPRINT_14 2020-09-30 07.51.27.xcarchive/BCSymbolMaps/EB7DF7BE-351D-3A4A-949C-0AE12606A3E2.bcsymbolmap: No such file or directory: not unobfuscating.
2020-09-30T07:54:45.9052570Z ##[error]warning: /Users/runner/Library/Developer/Xcode/Archives/2020-09-30/xxxx_1.1.xxxx-xxxx.1.1.0.4_SPRINT_14 2020-09-30 07.51.27.xcarchive/BCSymbolMaps/9702769F-1F06-3001-AB75-5AD38E1F7D66.bcsymbolmap: No such file or directory: not unobfuscating.
2020-09-30T07:54:45.9055030Z ##[error]warning: /Users/runner/Library/Developer/Xcode/Archives/2020-09-30/xxxx_1.1.xxxx-xxxx.1.1.0.4_SPRINT_14 2020-09-30 07.51.27.xcarchive/BCSymbolMaps/D560471D-F43F-30D6-9717-5252EE100F10.bcsymbolmap: No such file or directory: not unobfuscating.
2020-09-30T07:54:45.9056620Z ##[error]Additional writes to stderr truncated
2020-09-30T07:54:45.9063410Z ##[section]Finishing: create keychain invoke fastlane
更新
设置为false时仍不工作
- script: |
echo 'Start invoking Fastfile'
fastlane release --verbose projectName:${{parameters.projectName}} appIdentifier:${{parameters.appIdentifier}} versionNumber:${{parameters.versionNumber}} buildNumber:${{parameters.buildNumber}} plistFileFtpBasePath:${{parameters.plistFileFtpBasePath}} ArtifactsDirectory:$(System.ArtifactsDirectory)
echo 'Done invoking Fastfile'
failOnStderr: false
workingDirectory: '$(System.ArtifactsDirectory)/ios_artifacts'
displayName: 'create keychain invoke fastlane'
这是一种预期行为 设置
failOnStderr:true
后,如果有任何错误写入标准错误流,则任务将失败
相反,如果failOnStderr
为false
,则任务的失败将取决于退出代码。当退出代码不为0时,任务将失败
正常情况下,您应该知道写入stderr的错误将不会导致退出代码为非零。failOnStderr
为true
或false
是两种不同的故障条件
根据您共享的日志:
2020-09-30T07:54:45.9020160Z ##[error]Bash wrote one or more lines to the standard error stream.
您可以看到写入Stderr流时出现一些错误。此时,任务按预期失败,因为您将failOnStderr
设置为true
已更新:
样本:
警告成功:
使用stderr失败:
这是一种预期行为 设置
failOnStderr:true
后,如果有任何错误写入标准错误流,则任务将失败
相反,如果failOnStderr
为false
,则任务的失败将取决于退出代码。当退出代码不为0时,任务将失败
正常情况下,您应该知道写入stderr的错误将不会导致退出代码为非零。failOnStderr
为true
或false
是两种不同的故障条件
根据您共享的日志:
2020-09-30T07:54:45.9020160Z ##[error]Bash wrote one or more lines to the standard error stream.
您可以看到写入Stderr流时出现一些错误。此时,任务按预期失败,因为您将failOnStderr
设置为true
已更新:
样本:
警告成功:
使用stderr失败:
感谢您提供的信息性回复,这一切都很好,我也能理解,但我的意思是,当我突然设置此属性时,我会在stderr中出现这些错误。如果没有这个属性,一切都正常工作,我看不到bash标准logs@user63898,如果未将failOnStderr设置为正常,则这些消息将显示为警告。请看我更新的示例。我有点困惑,所以当“真正的”应用程序错误增加时,我怎么能失败这个任务呢?failOnStderr=false?@user63898。是的!真正的应用程序错误应该导致进程以非零的状态退出。如果您为任务设置failOnStderr=false,那么任务的失败将取决于任务的退出代码。谢谢,@Merlin Liang-MSFT您能研究一下这个问题吗:谢谢您提供的信息性回答,这一切都很好,也很清楚,但我的意思是,当我突然设置此属性时,我在stderr中出现了这些错误。如果没有这个属性,一切都正常工作,我看不到bash标准logs@user63898,如果未将failOnStderr设置为正常,则这些消息将显示为警告。请看我更新的示例。我有点困惑,所以当“真正的”应用程序错误增加时,我怎么能失败这个任务呢?failOnStderr=false?@user63898。是的!真正的应用程序错误应该导致进程以非零的状态退出。如果您为任务设置failOnStderr=false,那么任务的失败将取决于任务的退出代码。谢谢,@Merlin Liang-MSFT您能研究一下这个问题吗: