sbt-plugins represents a couple of pieces of functionality I found common in a couple Simple Build Tool (sbt) projects and extracted into plugins.
- Adds def webappClassesDirectory — default is (webappPath / “WEB-INF” / “classes”)
- Adds def webappLibDirectory — default is (webappPath / “WEB-INF” / “lib”)
- Adds clean-webapp task which deletes everything under webappClassesDirectory and all .jar files under webappLibDirectory
- Adds def repositoryPath — default is (“.” / “repository”)
- Adds clean-repository task which deletes repository directory and everything under it
- Adds method to recursively delete a directory (def deleteDirectory)
- Adds optional less.compiler property which provides the command used to invoke the less compiler — default is “lessc”
- Adds def lessFiles — default is (webappPath * ".less")
- Adds less-compile task which compiles the .less files to .css files
- Overrides webappResources to remove lessFiles from the PathFinder
- Overrides prepareWebappAction to depend on less-compile task
- Adds optional resolver.file property which provides path to publish resolver information — default is “.resolver”
- Adds a private def sbtPublishResolver which applies resolver information in resolver.file
- Adds publishTo val used for publishing based on result of sbtPublishResolver
resolver.name=Example Resolver
resolver.host=example.com
resolver.port=22
resolver.path=/path/to/publish/into/
resolver.type=sftp|ssh