diff options
author | Ivan Topolnjak <ivantopo@gmail.com> | 2013-11-24 22:55:50 -0300 |
---|---|---|
committer | Ivan Topolnjak <ivantopo@gmail.com> | 2013-11-24 22:55:50 -0300 |
commit | bda7c0b0beef574b738130b3561a9e8ba78f67ba (patch) | |
tree | 47497dcd674a4782c74a5601365480328ecef5af /project/Site.scala | |
parent | 7298ddee182f08f7232e8daf8e628b089678f77b (diff) | |
download | Kamon-bda7c0b0beef574b738130b3561a9e8ba78f67ba.tar.gz Kamon-bda7c0b0beef574b738130b3561a9e8ba78f67ba.tar.bz2 Kamon-bda7c0b0beef574b738130b3561a9e8ba78f67ba.zip |
base scheleton for the site
Diffstat (limited to 'project/Site.scala')
-rw-r--r-- | project/Site.scala | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/project/Site.scala b/project/Site.scala new file mode 100644 index 00000000..6cda22bd --- /dev/null +++ b/project/Site.scala @@ -0,0 +1,24 @@ +import sbt._ +import sbt.Keys._ +import com.typesafe.sbt.site.JekyllSupport._ +import com.typesafe.sbt.SbtSite._ + +object Site { + val siteSettings = site.settings ++ site.jekyllSupport() ++ + inConfig(Jekyll)(Seq( + RequiredGems := Map("jekyll" -> "1.3.0", "liquid" -> "2.5.4"), + mappings <<= (sourceDirectory, target, includeFilter, CheckGems, streams) map { + (src, t, inc, _, s) => buildJekyll(src, t, inc, s) } )) + + def buildJekyll(src: File, target: File, inc: FileFilter, s: TaskStreams): Seq[(File, String)] = { + // Run Jekyll + sbt.Process(Seq("jekyll", "build", "--destination", target.getAbsolutePath), Some(src)) ! s.log match { + case 0 => () + case n => sys.error("Could not run jekyll, error: " + n) + } + // Figure out what was generated. + for { + (file, name) <- (target ** inc x relativeTo(target)) + } yield file -> name + } +}
\ No newline at end of file |