Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-3895

Update warnings plugin to have a generic parser that has a configurable regexp in the Hudson config screen.

    XMLWordPrintable

    Details

    • Type: New Feature
    • Status: Closed (View Workflow)
    • Priority: Minor
    • Resolution: Fixed
    • Component/s: warnings-plugin
    • Labels:
      None
    • Environment:
      Platform: All, OS: All
    • Similar Issues:

      Description

      One of my customers is a hardware development team and they use some very unique
      EDA build tools to do their build.

      They would like a complete warnings report of their build. Right now, the
      warnings plugin
      only finds 2 of their compiler warnings (which happen to be 'GCC like') . I
      setup the warnings plugin
      to scan the console log and use all parsers. The problem is that the existing
      parsers arent picking up all the warnings.
      Is there a way to define my own warning parser class? A generic/user-defined
      parser option in the parsers
      drop-down along with a pattern field in the warnings plugin configuration would
      be awesome.

      Here are some examples of warning patterns in the build log which the warnings
      plugin isnt finding...

      #1 warning type not found by plugin

      Warning-[TMBIN] Too many bits in Based Number
      /projects/mpgIP/users/mpg_hw/sspi/verification/sv/bench/models/i2s/a_codec.v,
      780
      The specified width is '12' bits, actually got '16' bits.
      The offending number is : '0000'.
      Warning-[UNKWN_IGOPTS] Unknown option(s) ignored
      ...
      Warning-[ENBL_OPTS] Enabling option(s)
      ...

      #2 warning type not found by plugin

              • Warning: +memcbk/-debug* will not enable toggle coverage on MDA please
                use -cm_tgl mda to enable it
              • Warning:
                file '/projects/mpgIP/users/mpg_hw/sspi/verification/sv/ssp_coverage_config.txt'
                passed with option -cm_hier is nonexistent

      #3 warning type not found by plugin
      Warning: $fsdbDumpfile - One FSDB file has already opened for dumping.

      And here is the Hudson warnings plugin output at the end of the job..

      [WARNINGS] Parsing warnings in console log...
      [WARNINGS] Found 2 annotations (0 new, 0 high, 2 normal, 0 low)
      [WARNINGS] Not changing build status, since no threshold has been exceeded

      It found these two and categorized them as GCC which is fine...
      /s/flexlm/7.2h/i86_r6/lm_new.c:573: warning: `sys_errlist' is deprecated; use
      `strerror' or `strerror_r' instead
      /s/flexlm/7.2h/i86_r6/lm_new.c:573: warning: `sys_nerr' is deprecated; use
      `strerror' or `strerror_r' instead

        Attachments

          Activity

          Hide
          scm_issue_link SCM/JIRA link daemon added a comment -

          Code changed in hudson
          User: : drulli
          Path:
          trunk/hudson/plugins/warnings/src/main/java/hudson/plugins/warnings/WarningsPublisher.java
          trunk/hudson/plugins/warnings/src/main/java/hudson/plugins/warnings/parser/ParserRegistry.java
          trunk/hudson/plugins/warnings/src/test/java/hudson/plugins/warnings/parser/ParserRegistryTest.java
          http://jenkins-ci.org/commit/33326
          Log:
          JENKINS-3895 Don't use invalid parser names that have been deleted.

          Show
          scm_issue_link SCM/JIRA link daemon added a comment - Code changed in hudson User: : drulli Path: trunk/hudson/plugins/warnings/src/main/java/hudson/plugins/warnings/WarningsPublisher.java trunk/hudson/plugins/warnings/src/main/java/hudson/plugins/warnings/parser/ParserRegistry.java trunk/hudson/plugins/warnings/src/test/java/hudson/plugins/warnings/parser/ParserRegistryTest.java http://jenkins-ci.org/commit/33326 Log: JENKINS-3895 Don't use invalid parser names that have been deleted.
          Hide
          slide_o_mix Alex Earl added a comment -

          So far this looks good. I setup a single parser to parse the warnings for a custom tool we have and it grabs the warnings correctly and displays them in the warnings graph and display page.

          Show
          slide_o_mix Alex Earl added a comment - So far this looks good. I setup a single parser to parse the warnings for a custom tool we have and it grabs the warnings correctly and displays them in the warnings graph and display page.
          Hide
          drulli Ulli Hafner added a comment -

          Integrated in Hudson Plug-ins (Compile) #32
          JENKINS-3895 Don't use invalid parser names that have been deleted.

          Show
          drulli Ulli Hafner added a comment - Integrated in Hudson Plug-ins (Compile) #32 JENKINS-3895 Don't use invalid parser names that have been deleted.
          Hide
          drulli Ulli Hafner added a comment -

          Thanks for testing.

          One question for the UI, what do you think is better:
          a) use empty text boxes for regexp and script with an example in the help?
          b) use text boxes with default values (with the example in the help)?

          Show
          drulli Ulli Hafner added a comment - Thanks for testing. One question for the UI, what do you think is better: a) use empty text boxes for regexp and script with an example in the help? b) use text boxes with default values (with the example in the help)?
          Hide
          slide_o_mix Alex Earl added a comment -

          I like the way it is currently setup, with nothing in the text boxes. The help was great in getting things setup and going.

          Show
          slide_o_mix Alex Earl added a comment - I like the way it is currently setup, with nothing in the text boxes. The help was great in getting things setup and going.

            People

            • Assignee:
              drulli Ulli Hafner
              Reporter:
              anthonyj anthonyj
            • Votes:
              2 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: