Releases: sbt/sbt-native-packager
Bugfix Release
Commits and the issues they fixed since v1.2.0-M2
Issue(s) | Commit | Message |
---|---|---|
#762 | 5771d56 | FIX #762 Add native packager logo to docs and README (#820) * FIX #762 Add nativ |
#825 | 54fb9aa | Fix duplicate RPM scriptlet override (#825) * add unique test for maintainer scr |
#818 | 897b904 | docker: tag -f is deprecated (#821) fixes #818 |
#804 | 6f23449 | fix typo rpmScriptletsDirectory (#804) |
Pull requests since v1.2.0-M2
Pull Request(s) | Commit | Message |
---|
A big thank you to all the contributors!
# | Author |
---|---|
1 | James Pic |
1 | Andreas Kapp |
1 | Carlos Quiroz |
1 | Felix Satyaputra |
1 | Sergey |
1 | Oskari Porkka |
1 | Nepomuk Seiler |
Wix4, Systemd and Upstart
Commits and the issues they fixed since v1.2.0-M1
Issue(s) | Commit | Message |
---|---|---|
#795 | 1f67bcb | Use recommended path for systemd scripts (#795) * Use recommended path for syste |
#754 | 5d11521 | Fix #754 Add kill timeout to upstart. Add retryTimeout and retries keys (#799) * |
#802 | 8eb636d | Introduce new namespace and solve duplicate key issue (#802) * Add support for W |
a1d6023 | Fix typo in debian systemv script. An if construct was not properly closed by |
Pull requests since v1.2.0-M1
Pull Request(s) | Commit | Message |
---|---|---|
#798 | 46ea82d | Fix typo in debian systemv script.Fix typo in debian systemv script. |
A big thank you to all the contributors!
# | Author |
---|---|
5 | Nepomuk Seiler |
1 | Kirill Plyashkevich |
1 | Ben McCann |
1 | Jens Grassel |
1 | Simon Schulz |
0 | Alexey Kardapoltsev |
Systemloader AutoPlugins
Breaking Changes
This release transfer the systemloader
feature from the JavaAppServerPackaging
archetype to a new set of archetype plugins called systemloader plugins.
Migration
Assuming you have build like this
enablePlugins(JavaServerAppPackaging)
you must now add a systemloader explicitly via an AutoPlugin.
enablePlugins(JavaServerAppPackaging, SystemdPlugin)
You also need to remove code like this as it will not work anymore
// import is wrong
import com.typesafe.sbt.packager.archetypes.ServerLoader
// will have strange effects
serverLoading in Rpm := ServerLoader.Upstart
serverLoading in Debian := ServerLoader.SystemV
Motivation
Why did we change this behaviour?
- Default choices for systemloaders are to fragile as these vary from distribution and version
- Customization was not really possible. Now we can provide systemloader specific task/settings to customize the systemloader configurations
- Reusability. You are now free to use systemloaders with everyother archetype without the setup the
JavaServerAppPackaging
adds. For exampleenablePlugins(JavaAppPackaging, SystemdPlugin)
is enough if you don't need log and pid folders or the etc-default support. - Cleaner code. This is affects you directly as we can change systemloader behaviour faster and fix bugs in the plugin responsible for the specific systemloader. Next steps will be to add customization for
systemd
( see #785 for a list of related issues ).
This changes however come at a price. You now only can use one systemloader per sbt-module. If you need different systemloaders for rpm/debian, you will have to create two submodules with different configurations.
See #785 for the initial discussion.
Commits and the issues they fixed since v1.1.1
Issue(s) | Commit | Message |
---|---|---|
#785 | 0a6be58 | Extract Systemloaders into AutoPlugins (#785) * Add systemd plugin. Idea on how |
Pull requests since v1.1.1
Pull Request(s) | Commit | Message |
---|
A big thank you to all the contributors!
# | Author |
---|---|
3 | Nepomuk Seiler |
Docker / Daemon log / Bugfixes
Changes
daemonStdoutLogFile
for SystemV systemloader- Fixing
JAVA_OPTS
for ash script - Fixing path separator for Docker commands on Windows
Commits and the issues they fixed since v1.1.0
Issue(s) | Commit | Message |
---|---|---|
#792 | 6ef8956 | fix #766 (#792) |
Pull requests since v1.1.0
Pull Request(s) | Commit | Message |
---|---|---|
#765 | 0a212be | Windows Make Docker plugin portable so that Windows is supportedMake Docker plug |
#772 | cdc207e | daemonStdoutLogFile setting implementeddaemonStdoutLogFile setting implemented |
A big thank you to all the contributors!
# | Author |
---|---|
2 | Nepomuk Seiler |
1 | David Pennell |
1 | Gia Bảo |
1 | Marius B. Kotsbak |
1 | Paul Draper |
1 | Alexey Kardapoltsev |
Docker and Server improvements
Changes
Maintainer Scripts
The rpm
and debian
maintainer scripts have grown over the past years in sbt-native-packager. There settings for rpm scriplets (e.g. rpmPre
) with hard to use types (Option[String]
) or no helper methods for the debianMaintainerScripts
.
With this milestone we introduce a new task-setting:
maintainerScripts: Map[String, Seq[String]]
This will serve as the low level data-structure for all package formats that use maintainer scripts. We have plenty of docs to support you:
To give you a peak what it looked before and after
Before
rpmPostun := rpmPost.value.map { content =>
s"""|$content
|echo 'hello, world
|""".stripMargin
}.orElse {
Option("""echo 'hello, world"
""".stripMargin)
}
After
import RpmConstants._
maintainerScripts in Rpm := maintainerScriptsAppend((maintainerScripts in Rpm).value)(
Postun -> "echo 'hello, world'"
)
JDeb & Spotify-Docker marked as "provided"
We marked both dependencies as provided
to avoid unnecessary dependencies you either need nor want.
Both introduced issues with logging on the sbt-level as well.
Migration
If you used either the JDebPackaging
or DockerSpotifyClientPlugin
autoplugins you need to add the dependencies your self. In your plugins.sbt
add the following
// if you use JDeb
libraryDependencies += "org.vafer" % "jdeb" % "1.3" artifacts (Artifact("jdeb", "jar", "jar"))
// if you use Spotify Docker
libraryDependencies += "com.spotify" % "docker-client" % "3.2.1"
Proguard documentation
@mikebridge added documentation on how to use sbt-proguard
along with sbt-assembly
and sbt-native-packager
http://www.scala-sbt.org/sbt-native-packager/topics/custom.html#proguard
Commits and the issues they fixed since v1.0.6
Issue(s) | Commit | Message |
---|---|---|
#777 | cdf7eff | FIX #777 adding recipes for different packages |
#776 | a9bc669 | Fix #776 using $DAEMON_GROUP to indicate group in Redhat startup template |
ea2f6f3 | Fix an obvious typo | |
#676 | 4ff3a85 | FIX #676 adding configuration scopes to project configurations |
#651 | 5bd92bd | FIX #651 add code snippet to universal docs |
#683 | db3d6b4 | FIX #683 add references to play documentation |
#699 | ae64ee3 | FIX #699 add recipe for scalajs packaging |
#678 | 9789e97 | FIX #678 add reference to sbt-native-packager-examples |
#750 | c41a72e | FIX #750 remove outdated documentation |
cadac9d | Fix errors when .bat file path contains paranthesis. Without double quotes the p | |
8f1fd78 | Updates version of DockerSpotifyClient to 3.5.13 and fixes NullPointerException | |
#737 | af63778 | SystemD services now source /etc/default/{{app_name}} #737 This change modifies |
3cec2d6 | Fixing typos and sort related plugins | |
d109245 | Fix typo in description of maintainerScripts | |
#731 | ab1abad | FIX #731 add options for zip and tarballs |
007ddf4 | Fixing sphinx formatting error |
Pull requests since v1.0.6
Pull Request(s) | Commit | Message |
---|---|---|
#625 | 57c938d | Unify maintainerScriptsUnify maintainerScripts |
#713 | 07290f5 | Bumped version number in Installation section.Bumped version number in Installa |
#715 | 7c2b66e | Travis: build on OS X (take 2)Travis: build on OS X (take 2) |
#719 | 852e4b4 | Mark docker and jdeb as provided dependenciesMark docker and jdeb as provided d |
#720 | 409497a | Adding ant dependency for jdkpackager builds. Follow up to #719Adding ant depen |
#721 | 21ad738 | Add Proguard example to Custom Package Format documentationAdd Proguard example |
#732 | 3eca218 | FIX #731 add options for zip and tarballsFIX #731 add options for zip and tarba |
#733 | e2d4453 | Docker Plugin qualificationDocker Plugin qualification |
#741 | 12c1549 | Readme cleanupReadme cleanup |
#743 | 0ff5b77 | Fix typo in description of maintainerScriptsFix typo in description of maintain |
#745 | e32a059 | SystemD services now source /etc/default/{{app_name}} (resolves #737)SystemD se |
#748 | fd3d9cf | Fix errors when .bat file path contains paranthesis.Fix errors when .bat file p |
#749 | 9fb55c7 | Updates version of DockerSpotifyClient to 3.5.13 and fixes NullPointerException |
#751 | 94ff880 | FIX #750 remove outdated documentationFIX #750 remove outdated documentation |
#755 | 9e54569 | Major documentation clean up and preps for readthedocsMajor documentation clean |
#757 | 66dd482 | FIX #676 adding configuration scopes to project configurationsFIX #676 adding c |
#766 | 576add2 | AshScriptPlugin - Restore argument behavior as it was before a037519AshScriptPl |
#767 | de98975 | Fix an obvious typoFix an obvious typo |
#771 | 67bf957 | Add a few docker tests for travisAdd a few docker tests for travis |
#774 | eb9c03d | Add hint for win... |
Ivy Configuration, AshScript and Docker updates
Commits and the issues they fixed since v1.1.0-RC2
Issue(s) | Commit | Message |
---|---|---|
ea2f6f3 | Fix an obvious typo | |
#676 | 4ff3a85 | FIX #676 adding configuration scopes to project configurations |
#651 | 5bd92bd | FIX #651 add code snippet to universal docs |
#683 | db3d6b4 | FIX #683 add references to play documentation |
#699 | ae64ee3 | FIX #699 add recipe for scalajs packaging |
#678 | 9789e97 | FIX #678 add reference to sbt-native-packager-examples |
#750 | c41a72e | FIX #750 remove outdated documentation |
cadac9d | Fix errors when .bat file path contains paranthesis. Without double quotes the p | |
8f1fd78 | Updates version of DockerSpotifyClient to 3.5.13 and fixes NullPointerException |
Pull requests since v1.1.0-RC2
Pull Request(s) | Commit | Message |
---|---|---|
#748 | fd3d9cf | Fix errors when .bat file path contains paranthesis.Fix errors when .bat file p |
#749 | 9fb55c7 | Updates version of DockerSpotifyClient to 3.5.13 and fixes NullPointerException |
#751 | 94ff880 | FIX #750 remove outdated documentationFIX #750 remove outdated documentation |
#755 | 9e54569 | Major documentation clean up and preps for readthedocsMajor documentation clean |
#757 | 66dd482 | FIX #676 adding configuration scopes to project configurationsFIX #676 adding c |
#766 | 576add2 | AshScriptPlugin - Restore argument behavior as it was before a037519AshScriptPl |
#767 | de98975 | Fix an obvious typoFix an obvious typo |
#771 | 67bf957 | Add a few docker tests for travisAdd a few docker tests for travis |
A big thank you to all the contributors!
# | Author |
---|---|
13 | Nepomuk Seiler |
1 | Seyfulislam Ozdemir |
1 | Mikhail Yakshin |
1 | Vyatcheslav Suharnikov |
1 | David Hoepelman |
etc-default support for systemd
Commits and the issues they fixed since v1.1.0-RC1
Issue(s) | Commit | Message |
---|---|---|
#737 | af63778 | SystemD services now source /etc/default/{{app_name}} #737 This change modifies |
3cec2d6 | Fixing typos and sort related plugins | |
d109245 | Fix typo in description of maintainerScripts |
Pull requests since v1.1.0-RC1
Pull Request(s) | Commit | Message |
---|---|---|
#733 | e2d4453 | Docker Plugin qualificationDocker Plugin qualification |
#741 | 12c1549 | Readme cleanupReadme cleanup |
#743 | 0ff5b77 | Fix typo in description of maintainerScriptsFix typo in description of maintain |
#745 | e32a059 | SystemD services now source /etc/default/{{app_name}} (resolves #737)SystemD se |
A big thank you to all the contributors!
# | Author |
---|---|
5 | Nepomuk Seiler |
1 | Frank S. Thomas |
1 | Tim Harper |
1 | Matt Hughes |
Universal Packaging Bugfix
Commits and the issues they fixed since v1.1.0-M3
Issue(s) | Commit | Message |
---|---|---|
#731 | ab1abad | FIX #731 add options for zip and tarballs |
Pull requests since v1.1.0-M3
Pull Request(s) | Commit | Message |
---|---|---|
#732 | 3eca218 | FIX #731 add options for zip and tarballsFIX #731 add options for zip and tarba |
A big thank you to all the contributors!
# | Author |
---|---|
3 | Nepomuk Seiler |
Mark non-native dependencies as "provided"
JDeb & Spotify-Docker marked as "provided"
We marked both dependencies as provided
to avoid unnecessary dependencies you either need nor want.
Both introduced issues with logging on the sbt-level as well.
Migration
If you used either the JDebPackaging
or DockerSpotifyClientPlugin
autoplugins you need to add the dependencies your self. In your plugins.sbt
add the following
// if you use JDeb
libraryDependencies += "org.vafer" % "jdeb" % "1.3" artifacts (Artifact("jdeb", "jar", "jar"))
// if you use Spotify Docker
libraryDependencies += "com.spotify" % "docker-client" % "3.2.1"
Proguard documentation
@mikebridge added documentation on how to use sbt-proguard
along with sbt-assembly
and sbt-native-packager
http://www.scala-sbt.org/sbt-native-packager/topics/custom.html#proguard
Commits and the issues they fixed since v1.1.0-M1
Issue(s) | Commit | Message |
---|
Pull requests since v1.1.0-M1
Pull Request(s) | Commit | Message |
---|---|---|
#719 | 852e4b4 | Mark docker and jdeb as provided dependenciesMark docker and jdeb as provided d |
#720 | 409497a | Adding ant dependency for jdkpackager builds. Follow up to #719Adding ant depen |
#721 | 21ad738 | Add Proguard example to Custom Package Format documentationAdd Proguard example |
A big thank you to all the contributors!
# | Author |
---|---|
9 | Nepomuk Seiler |
2 | Mike Bridge |
Unify rpm/debian maintainer scripts
Maintainer Scripts
The rpm
and debian
maintainer scripts have grown over the past years in sbt-native-packager. There settings for rpm scriplets (e.g. rpmPre
) with hard to use types (Option[String]
) or no helper methods for the debianMaintainerScripts
.
With this milestone we introduce a new task-setting:
maintainerScripts: Map[String, Seq[String]]
This will serve as the low level data-structure for all package formats that use maintainer scripts. We have plenty of docs to support you:
To give you a peak what it looked before and after
Before
rpmPostun := rpmPost.value.map { content =>
s"""|$content
|echo 'hello, world
|""".stripMargin
}.orElse {
Option("""echo 'hello, world"
""".stripMargin)
}
After
import RpmConstants._
maintainerScripts in Rpm := maintainerScriptsAppend((maintainerScripts in Rpm).value)(
Postun -> "echo 'hello, world'"
)
Commits and the issues they fixed since v1.0.6
Issue(s) | Commit | Message |
---|---|---|
007ddf4 | Fixing sphinx formatting error |
Pull requests since v1.0.6
Pull Request(s) | Commit | Message |
---|---|---|
#625 | 57c938d | Unify maintainerScriptsUnify maintainerScripts |
#713 | 07290f5 | Bumped version number in Installation section.Bumped version number in Installa |
#715 | 7c2b66e | Travis: build on OS X (take 2)Travis: build on OS X (take 2) |
A big thank you to all the contributors!
# | Author |
---|---|
2 | Nepomuk Seiler |
2 | Lars Hupel |
1 | Simeon H.K. Fitch |