scala-ide/uber-build — pull request #19 by adriaanm (2013-11-08 18:54:58+00:00)
Title: Enable migration to maven-publishing Scala PR validation.

[Tested by https://scala-webapps.epfl.ch/jenkins/view/pr-validators/job/pr-scala-integrate-ide/3880/]

The new Scala PR validation (going in production soon) publishes Scala to maven.
Downstream projects like the IDE should consume it through maven.

This way, dependencies between the validation jobs are limited to the `versions.properties`
file that specifies the version of Scala and all modules being validated,
and the internal artifactory maven repo that's running along with jenkins.

This change sets up IDE validation so it can handle both the old and the new system.
As soon as the new system is in production, the `` block should be removed.

New-style PR validation is detected by looking at `SCALA_VERSION`, which will look like
`2.11.0-123456-SNAPSHOT`, whereas the old scripts use `2.11.0` and rewrite internally.
(And, most importantly, the old IDE validation scripts publish Scala to maven.)

The internal Maven repository is enabled for maven builds by
the new `pr-scala-integrate-ide`, which will pass `-P pr-scala` in `MAVEN_ARGS`.

The profile is configured on jenkins via `~/.m2/settings.xml`.

The URL to the repo is passed along to dbuild via the property `prRepoUrl`,
so that the `sbt-builds-for-ide` config can add it to the repositories used by dbuild.
The sbt launcher used for dbuild can't read environment vars
(or I don't know how to make it), so must pass it the Java way.

Eventually, the dbuild step should also leave the IDE validation script,
and be done as part of the main Scala PR validation, which integrates
all relevant modules anyway.

As a minor tweak in reducing logging, quiet down `checkAvailability`,
as it used to cry wolf (`BUILD FAILURE`) simply when an artifact
was not available (not actually a failure).