Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. Until dependencies are found in a public repository, the following script needs to be run
    • ./resources/scripts/installLibs.sh
  2. mvn clean install
    • builds all source code
    • runs all unit & integration tests
  3. mvn install -Dintegration.test.skip=true
    • runs all unit tests
    • skips all integration tests
  4. mvn install -Dmaven.test.skip=true
    • skips all unit tests
  5. Wiki Markup
    {{mvn integration-test \-P config\[A\|B\|Q\]}}
    • runs system tests per given configuration
  6. mvn install -P fedora-installer
    • generates fedora-installer.jar
    • found in /installer/target

Unresolved

Panel

If you would like to help, these nuggets need a friend.

...

  1. (info) Currently, all of the maven dependencies are in the top-level pom.xml
    1. (warning) They need to be surgically pushed down to their appropriate subproject pom.xml
    2. (info) Their dependency declaration needs to point to the proper version on maven-central, not the locally created artifact
  2. The continued need for each junit suite aggregator class needs to be re-evaluated
  3. Unit test naming conventions need to be standardized (since maven invokes them based on a regex at different build phases)
    1. unit-test: '**/*Test.class'
    2. integration-test: '*/Test.class'
  4. Unit/system/integration tests used to fall under 'fedora.test'
    1. now that they have been split across subprojects ('server', 'client', 'integrationtest'), they are not aggregated with a single call (i.e. fedora.test.AllUnitTests)
    2. a fix to this issue would only be needed as long as we continue to use ANT, Maven2 has its own test aggregation
  5. (tick) Build number & timestamp needed for artifact names and manifest files
  6. Refactor fedora.test.FedoraTestCase.java into two classes (one dependent on '/server' and one on '/client') so tests the inherit from it can be pushed back down from '/integrationtest' to their respective projects.
  7. fedora.test.integration.cma.SimpleDeploymentTests has a bug. See source file for details.
  8. In creating fedorahome.zip, deploy and undeploy *.wsdd files are token-swapped (e.g. 'Fedora-API-M-Port-SOAPHTTP' to 'management').
    • This mangles token instances such as 'Fedora-API-M-Port-SOAPHTTP S'. This is a pre-existing bug.
  9. Running the maven-built installer can result in an out of memory exception:
    • java -jar installer/target/installer-1.0.0-fedora-installer.jar
      Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
          at java.util.jar.JarInputStream.getBytes(JarInputStream.java:82)
          at java.util.jar.JarInputStream.<init>(JarInputStream.java:65)
          at java.util.jar.JarInputStream.<init>(JarInputStream.java:43)
          at com.simontuffs.onejar.JarClassLoader.loadByteCode(JarClassLoader.java:450)
    • Chris has been able to reproduce this consistently in Ubuntu with Sun Java5 and Java6.
    • This can be worked around by specifying -Xms256m -Xmx256m (increasing the heap size).
    • The installer currently is built with superflouous jars, so that may be the cause.  It may be the case that the dependency push-down effort (#1 above) resolves this.

...