2004-07-27 13:37:07 -04:00
|
|
|
#!/bin/sh
|
|
|
|
|
|
|
|
# Check to make sure JAVA_HOME is set
|
2005-05-08 18:50:01 -04:00
|
|
|
[ -z "$JAVA_HOME" ] && echo && echo 'You must set $JAVA_HOME to use mboot!' && echo && exit 1
|
2004-07-27 13:37:07 -04:00
|
|
|
|
2005-04-11 09:07:32 -04:00
|
|
|
JAVACMD=$JAVA_HOME/bin/java
|
|
|
|
|
2004-08-14 16:46:24 -04:00
|
|
|
ARGS="$@"
|
|
|
|
|
2005-04-11 09:07:32 -04:00
|
|
|
# OS specific support. $var _must_ be set to either true or false.
|
|
|
|
cygwin=false;
|
|
|
|
case "`uname`" in
|
|
|
|
CYGWIN*) cygwin=true ;;
|
|
|
|
esac
|
|
|
|
|
|
|
|
# For Cygwin, ensure paths are in UNIX format before anything is touched
|
|
|
|
if $cygwin ; then
|
2005-05-10 11:36:39 -04:00
|
|
|
[ -n "$M2_HOME" ] && M2_HOME=`cygpath -w "$M2_HOME"`
|
2005-04-11 09:07:32 -04:00
|
|
|
fi
|
|
|
|
|
2005-07-01 15:26:56 -04:00
|
|
|
if [ -z "$M2_HOME" ]; then
|
|
|
|
echo "M2_HOME must be set."
|
|
|
|
exit 1
|
2004-09-09 07:13:12 -04:00
|
|
|
fi
|
|
|
|
|
2005-07-01 15:26:56 -04:00
|
|
|
HOME_ARGS="-Dmaven.home=$M2_HOME"
|
|
|
|
|
2004-07-27 13:37:07 -04:00
|
|
|
# Build and install mboot
|
|
|
|
(
|
|
|
|
echo "-----------------------------------------------------------------------"
|
|
|
|
echo " Building mboot ... "
|
|
|
|
echo "-----------------------------------------------------------------------"
|
|
|
|
|
|
|
|
cd ./maven-mboot2
|
2005-06-06 21:32:11 -04:00
|
|
|
./build
|
2004-07-27 13:37:07 -04:00
|
|
|
ret=$?; if [ $ret != 0 ]; then exit $ret; fi
|
|
|
|
)
|
|
|
|
ret=$?; if [ $ret != 0 ]; then exit $ret; fi
|
|
|
|
|
|
|
|
(
|
|
|
|
echo "-----------------------------------------------------------------------"
|
|
|
|
echo " Building maven2 components ... "
|
|
|
|
echo "-----------------------------------------------------------------------"
|
|
|
|
|
2005-06-06 21:32:11 -04:00
|
|
|
"$JAVACMD" "$HOME_ARGS" $MAVEN_OPTS -jar mboot.jar $ARGS
|
2004-07-27 13:37:07 -04:00
|
|
|
ret=$?; if [ $ret != 0 ]; then exit $ret; fi
|
|
|
|
)
|
|
|
|
ret=$?; if [ $ret != 0 ]; then exit $ret; fi
|
|
|
|
|
2005-06-21 22:07:42 -04:00
|
|
|
# I Really Don't want to be rebuilding these (Especially the reports) every time, but
|
|
|
|
# until we regularly push them to the repository and the integration tests rely on
|
|
|
|
# some of these plugins, there is no choice
|
2005-03-31 23:44:33 -05:00
|
|
|
(
|
|
|
|
echo "-----------------------------------------------------------------------"
|
|
|
|
echo " Rebuilding maven2 plugins ... "
|
|
|
|
echo "-----------------------------------------------------------------------"
|
|
|
|
|
|
|
|
cd maven-plugins
|
2005-05-23 02:43:12 -04:00
|
|
|
# update the release info to ensure these versions get used in the integration tests
|
2005-06-21 10:51:55 -04:00
|
|
|
m2 --no-plugin-updates --batch-mode -DupdateReleaseInfo=true -e $ARGS clean:clean install
|
2005-03-31 23:44:33 -05:00
|
|
|
ret=$?; if [ $ret != 0 ]; then exit $ret; fi
|
|
|
|
)
|
|
|
|
ret=$?; if [ $ret != 0 ]; then exit $ret; fi
|
|
|
|
|
2005-06-21 22:07:42 -04:00
|
|
|
(
|
|
|
|
echo "-----------------------------------------------------------------------"
|
|
|
|
echo " Rebuilding maven2 reports ... "
|
|
|
|
echo "-----------------------------------------------------------------------"
|
|
|
|
|
|
|
|
cd maven-reports
|
|
|
|
# update the release info to ensure these versions get used in the integration tests
|
|
|
|
m2 --no-plugin-updates --batch-mode -DupdateReleaseInfo=true -e $ARGS clean:clean install
|
|
|
|
ret=$?; if [ $ret != 0 ]; then exit $ret; fi
|
|
|
|
)
|
|
|
|
ret=$?; if [ $ret != 0 ]; then exit $ret; fi
|
|
|
|
|
2004-07-27 13:37:07 -04:00
|
|
|
(
|
|
|
|
cd ./maven-core-it
|
|
|
|
echo
|
|
|
|
echo "Running maven-core integration tests ..."
|
|
|
|
echo
|
Working on issue: MNG-379
Added specified stop-gap patch for issue: MNG-473 (affects settings-builder and registry-builder)
Today I've made the following progress on this so far:
- Added a new project, called maven-plugin-registry, to house the model for this new file.
- Developed/debugged/tested PluginVersionManager/DefaultPluginVersionManager to isolate the plugin-version checks/management code away from the PluginManager
- Added interactiveMode (<interactiveMode>true|false</interactiveMode> directly under the root element of settings.xml, or -B short CLI option or --batch-mode CLI option, where the CLI options turn OFF interactiveMode). This will allow things like the maven-plugins build to register new plugins (and, for now, new versions of plugins) automatically.
- Added user input handler for when interactiveMode = true, to get a yes/no on whether to use the discovered version over the installed version and/or no version at all. If there is no installed version, and the user selects 'n', then the discovered version is used FOR THAT SESSION ONLY, and won't be recorded in the registry.
- Added checks/recording rejected versions against the registry, before attempting to use the discovered version.
Pending:
- Still need to add update-policies, to determine two things:
1. how often to check for updates
2. what to do when updates are found (autoUpdate, etc.)
git-svn-id: https://svn.apache.org/repos/asf/maven/components/trunk@190854 13f79535-47bb-0310-9956-ffa450edef68
2005-06-15 21:50:28 -04:00
|
|
|
./maven-core-it.sh --batch-mode "$HOME_ARGS" $ARGS
|
2004-07-27 13:37:07 -04:00
|
|
|
ret=$?; if [ $ret != 0 ]; then exit $ret; fi
|
|
|
|
)
|
|
|
|
ret=$?; if [ $ret != 0 ]; then exit $ret; fi
|