Today we’re happy to announce another open source project: sbt-ci-release-early. It’s an sbt plugin that takes care of automatically releasing your projects including git tags, and supports both your in-house setup (e.g. jenkins/artifactory) as well as your public builds (e.g. travis.ci/sonatype).
In essence, it allows you to fully automatically release a new version for every successful CI build. The resulting artifacts have normal versions, e.g. 1.2.3 rather than something cryptic like 1.0.0+0–1234abcd+20140707–1030.
It was born from a mix of wanting to get rid of SNAPSHOT dependencies and shortcomings from alternative plugins. If you’re still using SNAPSHOT dependencies, please read the following quote from the readme:
SNAPSHOT dependencies are evil because they:
* are mutable, i.e. your builds aren’t reproducible
* slow down your build, because sbt has to check for updates all the time
* involve (sometimes multiple layers) of caches, which tend to break and add complexity if you try to debug a problem
Setup is as straightforward as it can be: very simple for in-house setups, a little more involved for public builds for reasons we don’t control.
Shiftleft is using it for all our internal and public sbt builds, and it even releases itself 🙂
Give it a try: https://github.com/ShiftLeftSecurity/sbt-ci-release-early
Open sourcing release plugin `sbt-ci-release-early` was originally published in ShiftLeft Blog on Medium, where people are continuing the conversation by highlighting and responding to this story.
*** This is a Security Bloggers Network syndicated blog from ShiftLeft Blog - Medium authored by Michael Pollmeier. Read the original post at: https://blog.shiftleft.io/open-sourcing-release-plugin-sbt-ci-release-early-4dc4180bb777?source=rss----86a4f941c7da---4