diff --git a/build.sbt b/build.sbt index 5f15951..b95e794 100644 --- a/build.sbt +++ b/build.sbt @@ -1,6 +1,6 @@ val Organization = "io.github.gitbucket" val Name = "gitbucket" -val GitBucketVersion = "4.15.0-SNAPSHOT" +val GitBucketVersion = "4.15.0" val ScalatraVersion = "2.5.0" val JettyVersion = "9.3.19.v20170502" @@ -145,12 +145,25 @@ IO copyFile (classDir / name, temp / name) } + // include plugins + val pluginsDir = temp / "WEB-INF" / "classes" / "plugins" + IO createDirectory (pluginsDir) + IO copyFile(Keys.baseDirectory.value / "plugins.json", pluginsDir / "plugins.json") + val plugins = Seq( + ("gitbucket-gist-plugin", "4.9.1"), + ("gitbucket-emoji-plugin", "4.4.0") + ) + plugins.foreach { case (plugin, version) => + IO download(new java.net.URL(s"https://github.com/gitbucket/${plugin}/releases/download/${version}/${plugin}_${scalaBinaryVersion.value}-${version}.jar"), + pluginsDir / s"${plugin}_${scalaBinaryVersion.value}-${version}.jar") + } + // zip it up IO delete (temp / "META-INF" / "MANIFEST.MF") val contentMappings = (temp.*** --- PathFinder(temp)).get pair relativeTo(temp) val manifest = new JarManifest - manifest.getMainAttributes put (AttrName.MANIFEST_VERSION, "1.0") - manifest.getMainAttributes put (AttrName.MAIN_CLASS, "JettyLauncher") + manifest.getMainAttributes put (AttrName.MANIFEST_VERSION, "1.0") + manifest.getMainAttributes put (AttrName.MAIN_CLASS, "JettyLauncher") val outputFile = workDir / warName IO jar (contentMappings, outputFile, manifest) diff --git a/plugins.json b/plugins.json new file mode 100644 index 0000000..1148881 --- /dev/null +++ b/plugins.json @@ -0,0 +1,28 @@ +[ + { + "id": "emoji", + "name": "Emoji Plugin", + "description": "Provides Emoji support for GitBucket.", + "versions": [ + { + "version": "4.4.0", + "range": ">=4.10.0", + "file": "gitbucket-emoji-plugin_2.12-4.4.0.jar" + } + ], + "default": true + }, + { + "id": "gist", + "name": "Gist Plugin", + "description": "Provides Gist feature on GitBucket.", + "versions": [ + { + "version": "4.9.1", + "range": ">=4.14.0", + "file": "gitbucket-gist-plugin_2.12-4.9.1.jar" + } + ], + "default": false + } +] diff --git a/project/build.sbt b/project/build.sbt new file mode 100644 index 0000000..d1017c1 --- /dev/null +++ b/project/build.sbt @@ -0,0 +1 @@ +libraryDependencies += "org.json4s" %% "json4s-jackson" % "3.5.1" diff --git a/src/main/resources/plugins/gitbucket-emoji-plugin_2.12-4.4.0.jar b/src/main/resources/plugins/gitbucket-emoji-plugin_2.12-4.4.0.jar deleted file mode 100644 index 9f4fdec..0000000 --- a/src/main/resources/plugins/gitbucket-emoji-plugin_2.12-4.4.0.jar +++ /dev/null Binary files differ diff --git a/src/main/resources/plugins/gitbucket-gist-plugin_2.12-4.9.2.jar b/src/main/resources/plugins/gitbucket-gist-plugin_2.12-4.9.2.jar deleted file mode 100644 index 0808a5f..0000000 --- a/src/main/resources/plugins/gitbucket-gist-plugin_2.12-4.9.2.jar +++ /dev/null Binary files differ diff --git a/src/main/resources/plugins/gitbucket-notifications-plugin_2.12-1.0.0.jar b/src/main/resources/plugins/gitbucket-notifications-plugin_2.12-1.0.0.jar deleted file mode 100644 index 5c650ff..0000000 --- a/src/main/resources/plugins/gitbucket-notifications-plugin_2.12-1.0.0.jar +++ /dev/null Binary files differ diff --git a/src/main/resources/plugins/plugins.json b/src/main/resources/plugins/plugins.json deleted file mode 100644 index 370aad5..0000000 --- a/src/main/resources/plugins/plugins.json +++ /dev/null @@ -1,41 +0,0 @@ -[ - { - "id": "notifications", - "name": "Notifications Plugin", - "description": "Provides Notifications feature on GitBucket.", - "versions": [ - { - "version": "1.0.0", - "range": ">=4.15.0", - "file": "gitbucket-notifications-plugin_2.12-1.0.0.jar" - } - ], - "default": true - }, - { - "id": "emoji", - "name": "Emoji Plugin", - "description": "Provides Emoji support for GitBucket.", - "versions": [ - { - "version": "4.4.0", - "range": ">=4.10.0", - "file": "gitbucket-emoji-plugin_2.12-4.4.0.jar" - } - ], - "default": true - }, - { - "id": "gist", - "name": "Gist Plugin", - "description": "Provides Gist feature on GitBucket.", - "versions": [ - { - "version": "4.9.2", - "range": ">=4.15.0", - "file": "gitbucket-gist-plugin_2.12-4.9.2.jar" - } - ], - "default": false - } -]