Ivy home configurable instead of cache directory, work on artifact test

This commit is contained in:
Mark Harrah 2011-04-13 19:01:22 -04:00
parent 53b7b6f701
commit e73a49c467
2 changed files with 7 additions and 7 deletions

View File

@ -63,8 +63,9 @@ final class IvySbt(val configuration: IvyConfiguration)
configuration match
{
case e: ExternalIvyConfiguration => is.load(e.file)
case i: InlineIvyConfiguration =>
IvySbt.configureCache(is, i.paths.cacheDirectory, i.localOnly)
case i: InlineIvyConfiguration =>
i.paths.ivyHome foreach settings.setDefaultIvyUserDir
IvySbt.configureCache(is, i.localOnly)
IvySbt.setResolvers(is, i.resolvers, i.otherResolvers, i.localOnly, configuration.log)
IvySbt.setModuleConfigurations(is, i.moduleConfigurations)
}
@ -226,9 +227,9 @@ private object IvySbt
settings.addModuleConfiguration(attributes, settings.getMatcher(EXACT_OR_REGEXP), resolver.name, null, null, null)
}
}
private def configureCache(settings: IvySettings, dir: Option[File], localOnly: Boolean)
private def configureCache(settings: IvySettings, localOnly: Boolean)
{
val cacheDir = dir.getOrElse(settings.getDefaultRepositoryCacheBasedir())
val cacheDir = settings.getDefaultRepositoryCacheBasedir()
val manager = new DefaultRepositoryCacheManager("default-cache", settings, cacheDir) {
override def findModuleInCache(dd: DependencyDescriptor, revId: ModuleRevisionId, options: CacheMetadataOptions, r: String) =
super.findModuleInCache(dd,revId,options,null)
@ -243,7 +244,6 @@ private object IvySbt
}
settings.addRepositoryCacheManager(manager)
settings.setDefaultRepositoryCacheManager(manager)
dir.foreach(dir => settings.setDefaultResolutionCacheBasedir(dir.getAbsolutePath))
}
def toIvyConfiguration(configuration: Configuration) =
{

View File

@ -6,9 +6,9 @@ package sbt
import java.io.File
import scala.xml.{Node, NodeSeq}
final class IvyPaths(val baseDirectory: File, val cacheDirectory: Option[File])
final class IvyPaths(val baseDirectory: File, val ivyHome: Option[File])
{
def withBase(newBaseDirectory: File) = new IvyPaths(newBaseDirectory, cacheDirectory)
def withBase(newBaseDirectory: File) = new IvyPaths(newBaseDirectory, ivyHome)
}
sealed trait IvyConfiguration
{