Uploaded image for project: 'Forrest'
  1. Forrest
  2. FOR-752

Forrestbot "build" workstage creates spurious "build/webapp/WEB-INF/logs" directory

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: 0.7, 0.8, 0.9
    • Fix Version/s: 0.9
    • Component/s: Tool: Forrestbot
    • Labels:
      None
    • Urgency:
      Normal

      Description

      When running Forrestbot with the default value for property "build.work-dir" (namely "work/${ant.project.name}"), "project.build-dir" is set to the same value and consequently, "project.webapp" is set to "work/${ant.project.name}/webapp". However, one of the two "logs" directories continues to be created at "build/webapp/WEB-INF/logs", suggesting that somewhere a hardcoded value is used instead of ${project.webapp}. The mkdir command for this "logs" directory is not in any of the Ant build files in the Forrest distribution; it must be in one of the Java classes, probably in a class related to logging. I forced an I/O failure by turning off all permissions on build/webapp and running "forrest -f build.xml build". This yielded a stacktrace that originated 7 calls before:

      org.apache.avalon.excalibur.logger.factory.FileTargetFactory.createTarget(FileTargetFactory.java:160)

      The remaining 7 invokations were not displayed (just "... 7 more").

      The upshot of this bug is that running "forrest -f build.xml clean" misses the "logs" directory in the unexpected location. My workaround right now is to use a custom "clean-all" target that depends on "clean" and that deletes the spurious "build/webapp" directory.

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              rcalmbac Richard Calmbach
            • Votes:
              1 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: