## How it works?
- Uses the fixed versions to clone and check out each project (e.g. `spring-cloud-sleuth: 2.1.0.RELEASE`)
- From the version analyzes the branch and checks it out. E.g.
- for `spring-cloud-release`'s `Finchley.RELEASE` version will resolve either `Finchley.x` branch or will fallback to `master` if there's no `Finchley.x` branch.
- for `spring-cloud-sleuth`'s `2.1.0.RELEASE` version will resolve `2.1.x` branch
- Performs the release tasks per each project
- Performs the post release tasks at the end of the release
## Required options
- `releaser.fixed-versions` - A String to String mapping of manually set versions. E.g. `"spring-cloud-cli" -> "1.0.0.RELEASE"` will set
the `spring-cloud-cli.version` to `1.0.0.RELEASE` regardless of what was set in `spring-cloud-release` project. Example `--releaser.fixed-versions[spring-cloud-cli]=1.0.0.RELEASE`.
Use these properties to provide versions for the meta release.
- `releaser.meta-release.enabled` - You have to turn it on to enable a meta release. Defaults to `false`
- `releaser.meta-release.git-org-url` - The URL of the Git organization. We'll append each project's name to it.
Defaults to `https://github.com/spring-cloud`
run the task via `-x=true`
without this change the only way to execute tasks is to provide their number from the console
with this change we can provide execution options from the command line, we can execute full releases, single steps, multiple steps, bounded and unbounded ranges
fixes#37fixes#44
prerequisite for #30
without this change we will know that Spring Cloud Release has wrong setup only when we do POM updates
with this change, upon cloning the Spring Cloud Release project we will immediately check that there are snapshot versions for a release of a non-snapshot version of a project. If that's the case then we throw an exception.
fixes#42
without this change when the step was executed manually the version wasn't bumped
with this change we analyze the project's version after reverting the commit (if applicable)
fixes#38
without this step you could skip version retrieval. Due to this the application behaved in a bizarre way in later steps
with this change the version retrieval is mandatory. Actually without this step the whole application makes no sense to even execute
fixes#23