aboutsummaryrefslogtreecommitdiff
path: root/project/Site.scala
diff options
context:
space:
mode:
authorIvan Topolnjak <ivantopo@gmail.com>2013-11-24 22:55:50 -0300
committerIvan Topolnjak <ivantopo@gmail.com>2013-11-24 22:55:50 -0300
commitbda7c0b0beef574b738130b3561a9e8ba78f67ba (patch)
tree47497dcd674a4782c74a5601365480328ecef5af /project/Site.scala
parent7298ddee182f08f7232e8daf8e628b089678f77b (diff)
downloadKamon-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.scala24
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