##// END OF EJS Templates
Minor fixes in build settings and documentation
Minor fixes in build settings and documentation

File last commit:

r3:3065e34e2bec default
r3:3065e34e2bec default
Show More
readme.md
120 lines | 2.7 KiB | text/x-minidsrc | MarkdownLexer
cin
added preReleasePolicy, stagingBookmark, releaseBookmark to the extension, added documentation....
r1 # Mercurial build integration
## SYNOPSIS
```groovy
plugins {
cin
Minor fixes in build settings and documentation
r3 id 'org.implab.gradle-mercurial' version '1.0.0' // or specify latest version
cin
added preReleasePolicy, stagingBookmark, releaseBookmark to the extension, added documentation....
r1 }
mercurial {
releaseBookmark = 'prod'
preReleasePolicy { it
// this is the default behaviour
.addPatch(1)
.withPreRelease('snapshot')
.withMeta('changeset')
}
// get version from repository and apply it to the project
applyVersioningPolicy()
}
```
## DESCRIPTION
### `semver(versionString)`
Parses the specified version string and returns the semantic version object
### `mercurial(Closure configure)`
The extension added by the plugin to the project. Apply this plugin to the
root project and use the `mercurial { ... }` section to configure the
versioning.
See the description below for more details about settings.
#### `hgCmd`
The command which will be executed to perform the mercurial commands.
The default value is `hg`.
#### `outputCharset`
The charset for the `hgCmd` output, this property defaults
to the default charset of the operating system.
#### `hg(...args)`
Executes the mercurial command, returns the command output as text.
#### `workspaceInfo` (read-only)
Returns the information about current workspace, see description
below for details.
#### `workspaceVersion`
Returns the semantic version obtained from the repository. Querying
this property will lead querying the workspace info.
#### `applyVersioningPolicy()`
Reads the workspace information and sets the version of the project
according to settings.
If the version was specified using properties, then the specified
version will take preceding over the calculated one.
#### `preReleasePolicy(Closure<SemVersion> config)`
The closure which is used to calculate the version of the project
when the current commit isn't marked with a version tag.
The default behaviour is to increment the patch version and
to set the pre-release suffix to `'snapshot'`.
### `WorkspaceInfo`
This class encapsulates information about the current workspace.
All properties are read-only.
#### `versionTag`
The original version tag from the repository before parsing.
#### `changeSet`
The changeset id of the current workspace.
#### `versionDistance`
The distance in commits to the versionTag
#### `branch`
The name of the current sources branch.
#### `isDirty`
This flag indicates uncommited changes to the workspace. This flag is useful
to control some pipelines which run locally on developer machines.
## TASKS
### `release`
Marks this commit with current version and pre-release suffix removed and
moves the `release` bookmark to it.
### `staging`
Marks this commit with current version and moves the `staging` bookmark to it.
### `printVersion`
Prints the current version.