Developer Information

On this page

Summary

  1. Development version control uses Mercurial

  2. Jars are deployed to a Maven repository to enable Groovy Grapes

    @GrabResolver(name='atlassian', root='https://maven.atlassian.com/content/groups/public/') @Grab(group='org.swift.tools', module='gint', version='1.4.0')
  3. Contributions

    • No detailed process is defined at this time

    • JIRA issue should be used for any proposed contribution

      • this will enable discussion on the enhancement or fix

      • document how and when the contribution will be integrated into a release

Standard Build

  • Maven ant task jar in GROOVY_HOME/lib directory - get latest from http://maven.apache.org/ant-tasks/download.html

  • Normal runtime dependencies to build the jar file and run the set of integration tests

  • A GANT build script is included - build.gant

    cd <project directory> gant - run default target to compile source and create jar file gant all - run default target and also produce source and documentation jars gant itest - run default target and run the integration tests gant all itest - produce jar files and run integration tests

Integration test

  • GINT test are used to test GINT!

  • GINT needs to be tested on all supported platforms (Windows, Mac, and Linux) for a complete test

  • Some care is needed to support running the base integration tests out of the box (no configuration)

  • Additional dependencies and configurations are required to run the full set of integration tests

  • These tests must be ignored when configuration is not available

Contributors or Advanced

Some dependencies are required for specific actions:

  1. Maven2 is required to deploy jars to a Maven repository.

  2. The GINT source distribution is intended to support Windows, Linux, and Mac environments for development

    • Access to a test environment so the GINT integration test can be verified to run successfully for each environment

    • This ensures the source distribution is correct

  3. Mercurial is needed to properly share updates.

  4. A database (like Postgres) and appropriate configuration is required to develop and test SQL support. The SQL integration test is mostly disabled until some configuration is available.

  5. Mail configuration is required to test mail reporting.

  6. IM configuration and accounts are required to test IM reporting and interactive testing.

  7. Image CLI (more information available in the future) is required to develop and test the image compare support (experimental).

Eclipse Project

GINT is a groovy project built using Gant. Here is an example of the external libraries that need to be defined for the project.

© 2005 -2024 gint.org