s_all does not report an error when a python script returns a different error code than 0

XMLWordPrintableJSON

    • Type: Bug
    • Resolution: Unresolved
    • Priority: Minor - P4
    • None
    • Affects Version/s: None
    • Component/s: Build
    • None
    • Storage Engines - Foundations
    • 4,181.924
    • StorEng - Defined Pipeline
    • 2

      Whenever a Python script returns something other than 0, I'd expect s_all to say something about it and fail. However, it only reports an error when the script prints something.

      Example:

      diff --git a/dist/api_config_gen.py b/dist/api_config_gen.py
      index 772fcc736..1ef33854e 100755
      --- a/dist/api_config_gen.py
      +++ b/dist/api_config_gen.py
      @@ -1,4 +1,7 @@
       #!/usr/bin/env python3
       import os
      +import sys
      +
      +sys.exit(1)
       os.system("./api_config.py")
       os.system("./api_config.py -t")
      

      s_all runs fine here despite this change.

      However, running s_all with the following change makes it fail:

      diff --git a/dist/api_config_gen.py b/dist/api_config_gen.py
      index 772fcc736..f0b1a832c 100755
      --- a/dist/api_config_gen.py
      +++ b/dist/api_config_gen.py
      @@ -1,4 +1,6 @@
       #!/usr/bin/env python3
       import os
      +
      +print('error?')
       os.system("./api_config.py")
       os.system("./api_config.py -t")
      ...
      $ ./s_all
      dist/s_all run finished. Error? 1
      Fatal errors reported by: api_config_gen.py
      

            Assignee:
            [DO NOT USE] Backlog - Storage Engines Team
            Reporter:
            Etienne Petrel
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated: