Sync docs from master to gh-pages

This commit is contained in:
buildmaster
2018-06-25 07:22:39 +00:00
parent 4fc5f4dd50
commit 2b10a155af
4 changed files with 101 additions and 22 deletions

View File

@@ -1,8 +1,9 @@
<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>1.&nbsp;Spring Cloud Release Tools</title><link rel="stylesheet" type="text/css" href="css/manual-multipage.css"><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="multi_spring-cloud-release-tools.html" title="Spring Cloud Release Tools"><link rel="up" href="multi_spring-cloud-release-tools.html" title="Spring Cloud Release Tools"><link rel="prev" href="multi_spring-cloud-release-tools.html" title="Spring Cloud Release Tools"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">1.&nbsp;Spring Cloud Release Tools</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="multi_spring-cloud-release-tools.html">Prev</a>&nbsp;</td><th width="60%" align="center">&nbsp;</th><td width="20%" align="right">&nbsp;</td></tr></table><hr></div><div class="chapter"><div class="titlepage"><div><div><h1 class="title"><a name="_spring_cloud_release_tools" href="#_spring_cloud_release_tools"></a>1.&nbsp;Spring Cloud Release Tools</h1></div></div></div><p>Spring Cloud projects reuse the same pattern of building and deploying the applications. That&#8217;s
why this tool makes it easy to automate the release / dependency update process of our applications.</p><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="_what_does_it_do" href="#_what_does_it_do"></a>1.1&nbsp;What does it do?</h2></div></div></div><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">Clones the Spring Cloud Release project and picks all versions (Boot + Cloud projects)</li><li class="listitem"><p class="simpara">Modifies the project versions with values from SC-Release</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "><li class="listitem">throws an exception when we bump versions to release and there&#8217;s a SNAPSHOT version referenced in the POM</li></ul></div></li><li class="listitem"><p class="simpara">Performs the build and checks if the <code class="literal">docs</code> modules have properly created the documentation</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "><li class="listitem">throws an exception when in the <code class="literal">docs</code> module there&#8217;s an unresolved tag in any HTML file</li></ul></div></li><li class="listitem">Commits changed poms (ONLY FOR NON-SNAPSHOT VERSIONS)</li><li class="listitem">Creates a tag for the release / milestone (ONLY FOR NON-SNAPSHOT VERSIONS)</li><li class="listitem">Runs the deployment of the artifacts</li><li class="listitem">Publishes the docs (to <code class="literal">spring-cloud-static</code> for non-snapshots, to <code class="literal">gh-pages</code> for snapshots)</li><li class="listitem">Reverts back to snapshots, bumps the version by a patch (<code class="literal">1.0.1.RELEASE</code> &#8594; <code class="literal">1.0.2.BUILD-SNAPSHOT</code>) (ONLY FOR RELEASE VERSIONS)</li><li class="listitem">Closes the milestone on Github (e.g. <code class="literal">v1.0.1.RELEASE</code>) (ONLY FOR NON-SNAPSHOT VERSIONS)</li><li class="listitem">Generates an email template under <code class="literal">target/email.txt</code> (ONLY FOR NON-SNAPSHOT VERSIONS)</li><li class="listitem">Generates a blog template under <code class="literal">target/blog.md</code> (ONLY FOR NON-SNAPSHOT VERSIONS)</li><li class="listitem">Generates a tweet template under <code class="literal">target/tweet.txt</code> (ONLY FOR NON-SNAPSHOT VERSIONS)</li><li class="listitem">Generates a release notes template under <code class="literal">target/notes.md</code> (ONLY FOR NON-SNAPSHOT VERSIONS)</li><li class="listitem">Updates project information in Sagan (<a class="link" href="http://spring.io" target="_top">http://spring.io</a>) (ONLY FOR SNAPSHOT / RELEASE VERSIONS)</li><li class="listitem">For <code class="literal">GA</code>/ <code class="literal">SR</code> release will create an issue in Spring Guides under <a class="link" href="https://github.com/spring-guides/getting-started-guides/issues/" target="_top">https://github.com/spring-guides/getting-started-guides/issues/</a></li><li class="listitem">For <code class="literal">GA</code>/ <code class="literal">SR</code> release will update the links under <a class="link" href="https://github.com/spring-cloud/spring-cloud-static/tree/gh-pages/current" target="_top">https://github.com/spring-cloud/spring-cloud-static/tree/gh-pages/current</a></li></ul></div><div class="important" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Important"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Important]" src="images/important.png"></td><th align="left">Important</th></tr><tr><td align="left" valign="top"><p>Starting with version that does Sagan integration, you MUST pass the OAuth token,
otherwise the application will fail to start</p></td></tr></table></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="_what_should_i_do_first" href="#_what_should_i_do_first"></a>1.2&nbsp;What should I do first?</h2></div></div></div><p>Members of the Spring Cloud Team typically use this tool as follows. They first
why this tool makes it easy to automate the release / dependency update process of our applications.</p><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="_what_does_it_do" href="#_what_does_it_do"></a>1.1&nbsp;What does it do?</h2></div></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="_single_project" href="#_single_project"></a>1.1.1&nbsp;Single project</h3></div></div></div><p>For a single project</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">Clones the Spring Cloud Release project and picks all versions (Boot + Cloud projects)</li><li class="listitem"><p class="simpara">Modifies the project versions with values from SC-Release</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "><li class="listitem">throws an exception when we bump versions to release and there&#8217;s a SNAPSHOT version referenced in the POM</li></ul></div></li><li class="listitem"><p class="simpara">Performs the build and checks if the <code class="literal">docs</code> modules have properly created the documentation</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "><li class="listitem">throws an exception when in the <code class="literal">docs</code> module there&#8217;s an unresolved tag in any HTML file</li></ul></div></li><li class="listitem">Commits changed poms (ONLY FOR NON-SNAPSHOT VERSIONS)</li><li class="listitem">Creates a tag for the release / milestone (ONLY FOR NON-SNAPSHOT VERSIONS)</li><li class="listitem">Runs the deployment of the artifacts</li><li class="listitem">Publishes the docs (to <code class="literal">spring-cloud-static</code> for non-snapshots, to <code class="literal">gh-pages</code> for snapshots)</li><li class="listitem">Reverts back to snapshots, bumps the version by a patch (<code class="literal">1.0.1.RELEASE</code> &#8594; <code class="literal">1.0.2.BUILD-SNAPSHOT</code>) (ONLY FOR RELEASE VERSIONS)</li><li class="listitem">Closes the milestone on Github (e.g. <code class="literal">v1.0.1.RELEASE</code>) (ONLY FOR NON-SNAPSHOT VERSIONS)</li></ul></div><div class="important" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Important"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Important]" src="images/important.png"></td><th align="left">Important</th></tr><tr><td align="left" valign="top"><p>Starting with version that does Sagan integration, you MUST pass the OAuth token,
otherwise the application will fail to start</p></td></tr></table></div><p>After project release</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">Generates an email template under <code class="literal">target/email.txt</code> (ONLY FOR NON-SNAPSHOT VERSIONS)</li><li class="listitem">Generates a blog template under <code class="literal">target/blog.md</code> (ONLY FOR NON-SNAPSHOT VERSIONS)</li><li class="listitem">Generates a tweet template under <code class="literal">target/tweet.txt</code> (ONLY FOR NON-SNAPSHOT VERSIONS)</li><li class="listitem">Generates a release notes template under <code class="literal">target/notes.md</code> (ONLY FOR NON-SNAPSHOT VERSIONS)</li><li class="listitem">Updates project information in Sagan (<a class="link" href="http://spring.io" target="_top">http://spring.io</a>) (ONLY FOR SNAPSHOT / RELEASE VERSIONS)</li><li class="listitem">For <code class="literal">GA</code>/ <code class="literal">SR</code> release will create an issue in Spring Guides under <a class="link" href="https://github.com/spring-guides/getting-started-guides/issues/" target="_top">https://github.com/spring-guides/getting-started-guides/issues/</a></li><li class="listitem">For <code class="literal">GA</code>/ <code class="literal">SR</code> release will update the links under <a class="link" href="https://github.com/spring-cloud/spring-cloud-static/tree/gh-pages/current" target="_top">https://github.com/spring-cloud/spring-cloud-static/tree/gh-pages/current</a></li></ul></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="_meta_release" href="#_meta_release"></a>1.1.2&nbsp;Meta-release</h3></div></div></div><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem">Uses the fixed versions to clone and check out each project (e.g. <code class="literal">spring-cloud-sleuth: 2.1.0.RELEASE</code>)</li><li class="listitem"><p class="simpara">From the version analyzes the branch and checks it out. E.g.</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "><li class="listitem">for <code class="literal">spring-cloud-release&#8217;s `Finchley.RELEASE</code> version will resolve either <code class="literal">Finchley.x</code> branch or will fallback to <code class="literal">master</code> if there&#8217;s no <code class="literal">Finchley.x</code> branch.</li><li class="listitem">for <code class="literal">spring-cloud-sleuth&#8217;s `2.1.0.RELEASE</code> version will resolve <code class="literal">2.1.x</code> branch</li></ul></div></li><li class="listitem">Performs the release tasks per each project</li><li class="listitem">Performs the post release tasks at the end of the release</li></ul></div><div class="important" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Important"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Important]" src="images/important.png"></td><th align="left">Important</th></tr><tr><td align="left" valign="top"><p>For the meta-releaser to work we assume that the path to the
custom configuration file for each project is always <code class="literal">config/releaser.yml</code>.</p></td></tr></table></div></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="_what_should_i_do_first" href="#_what_should_i_do_first"></a>1.2&nbsp;What should I do first?</h2></div></div></div><p>Members of the Spring Cloud Team typically use this tool as follows. They first
clone the releaser locally and build the jar manually</p><pre class="programlisting">$ git clone git@github.com:spring-cloud/spring-cloud-release-tools.git
$ <span xmlns:d="http://docbook.org/ns/docbook" class="hl-keyword">cd</span> spring-cloud-release-tools
$ ./mvnw clean install</pre><div class="important" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Important"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Important]" src="images/important.png"></td><th align="left">Important</th></tr><tr><td align="left" valign="top"><p>You must set the value of the OAuth token. You can do it either via
@@ -101,8 +102,14 @@ $ java -jar ~/repo/spring-cloud-release-tools/spring-cloud-release-tools-spring/
</p><pre class="programlisting">$ java -jar ~/repo/spring-cloud-release-tools/spring-cloud-release-tools-spring/target/spring-cloud-release-tools-spring-<span class="hl-number">1.0</span>.<span class="hl-number">0.</span>BUILD-SNAPSHOT.jar --releaser.pom.branch=vDalston.SR1 --spring.config.name=releaser -r d-p -i=false</pre><p>
</p><p><b>Running single task 'closeMilestone' (automatic).&nbsp;</b>
</p><pre class="programlisting">$ java -jar ~/repo/spring-cloud-release-tools/spring-cloud-release-tools-spring/target/spring-cloud-release-tools-spring-<span class="hl-number">1.0</span>.<span class="hl-number">0.</span>BUILD-SNAPSHOT.jar --releaser.pom.branch=vDalston.SR1 --spring.config.name=releaser --closeMilestone -i=false</pre><p>
</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="_project_options" href="#_project_options"></a>1.5&nbsp;Project options</h2></div></div></div><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><code class="literal">releaser.fixed-versions</code> - A String to String mapping of manually set versions. E.g. <code class="literal">"spring-cloud-cli" &#8594; "1.0.0.RELEASE"</code> will set
the <code class="literal">spring-cloud-cli.version</code> to <code class="literal">1.0.0.RELEASE</code> regardless of what was set in <code class="literal">spring-cloud-release</code> project. Example <code class="literal">--releaser.fixed-versions[spring-cloud-cli]=1.0.0.RELEASE</code>.</li><li class="listitem"><code class="literal">releaser.git.fetch-versions-from-git</code> - If <code class="literal">true</code> then should fill the map of versions from Git. If <code class="literal">false</code> then picks fixed versions</li><li class="listitem"><code class="literal">releaser.git.clone-destination-dir</code> - Where should the Spring Cloud Release repo get cloned to. If null defaults to a temporary directory</li><li class="listitem"><code class="literal">releaser.git.spring-cloud-release-git-url</code> - URL to Spring Cloud Release Git repository. Defaults to <code class="literal"><a class="link" href="https://github.com/spring-cloud/spring-cloud-release" target="_top">https://github.com/spring-cloud/spring-cloud-release</a></code></li><li class="listitem"><code class="literal">releaser.git.documentation-url</code> - URL to the documentation Git repository. Defaults to <code class="literal"><a class="link" href="https://github.com/spring-cloud/spring-cloud-static" target="_top">https://github.com/spring-cloud/spring-cloud-static</a></code></li><li class="listitem"><code class="literal">releaser.git.documentation-branch</code> - Branch to check out for the documentation project. Defaults to <code class="literal">gh-pages</code></li><li class="listitem"><code class="literal">releaser.git.oauth-token</code> - GitHub OAuth token to be used to interact with GitHub repo.</li><li class="listitem"><code class="literal">releaser.git.username</code> - Optional Git username. If not passed keys will be used for authentication.</li><li class="listitem"><code class="literal">releaser.git.password</code> - Optional Git password. If not passed keys will be used for authentication.</li><li class="listitem"><code class="literal">releaser.git.number-of-checked-milestones</code> - In order not to iterate endlessly over milestones we introduce a threshold of milestones that
</p></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="_how_to_run_meta_release_automatic_mode" href="#_how_to_run_meta_release_automatic_mode"></a>1.5&nbsp;How to run meta-release (automatic-mode)</h2></div></div></div><p>All you have to do is run the jar with the releaser and pass the
<code class="literal">-x=true</code> option to turn on meta-release and a list of fixed versions
in the `--"releaser.fixed-versions[project-name]=project-version" format</p><pre class="screen">$ java -jar spring-cloud-release-tools-spring/target/spring-cloud-release-tools-spring-1.0.0.BUILD-SNAPSHOT.jar --spring.config.name=releaser -x=true --"releaser.fixed-versions[spring-cloud-sleuth]=2.0.1.BUILD-SNAPSHOT"</pre><div class="important" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Important"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Important]" src="images/important.png"></td><th align="left">Important</th></tr><tr><td align="left" valign="top"><p>For the meta release the <code class="literal">startFrom</code> or <code class="literal">taskNames</code> take into consideration
the project names, not task names. E.g. you can start from <code class="literal">spring-cloud-netflix</code> project,
or build only tasks with names <code class="literal">spring-cloud-build,spring-cloud-sleuth</code>.</p></td></tr></table></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="_project_options" href="#_project_options"></a>1.6&nbsp;Project options</h2></div></div></div><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><code class="literal">releaser.fixed-versions</code> - A String to String mapping of manually set versions. E.g. <code class="literal">"spring-cloud-cli" &#8594; "1.0.0.RELEASE"</code> will set
the <code class="literal">spring-cloud-cli.version</code> to <code class="literal">1.0.0.RELEASE</code> regardless of what was set in <code class="literal">spring-cloud-release</code> project. Example <code class="literal">--releaser.fixed-versions[spring-cloud-cli]=1.0.0.RELEASE</code>.
Use these properties to provide versions for the meta release.</li><li class="listitem"><code class="literal">releaser.meta-release.enabled</code> - You have to turn it on to enable a meta release. Defaults to <code class="literal">false</code></li><li class="listitem"><code class="literal">releaser.meta-release.release-train-project-name</code> - Name of the project that represents the BOM of the release train. Defaults to <code class="literal">spring-cloud-release</code></li><li class="listitem"><code class="literal">releaser.meta-release.git-org-url</code> - The URL of the Git organization. We&#8217;ll append each project&#8217;s name to it.
Defaults to <code class="literal"><a class="link" href="https://github.com/spring-cloud" target="_top">https://github.com/spring-cloud</a></code></li><li class="listitem"><code class="literal">releaser.git.fetch-versions-from-git</code> - If <code class="literal">true</code> then should fill the map of versions from Git. If <code class="literal">false</code> then picks fixed versions</li><li class="listitem"><code class="literal">releaser.git.clone-destination-dir</code> - Where should the Spring Cloud Release repo get cloned to. If null defaults to a temporary directory</li><li class="listitem"><code class="literal">releaser.git.spring-cloud-release-git-url</code> - URL to Spring Cloud Release Git repository. Defaults to <code class="literal"><a class="link" href="https://github.com/spring-cloud/spring-cloud-release" target="_top">https://github.com/spring-cloud/spring-cloud-release</a></code></li><li class="listitem"><code class="literal">releaser.git.documentation-url</code> - URL to the documentation Git repository. Defaults to <code class="literal"><a class="link" href="https://github.com/spring-cloud/spring-cloud-static" target="_top">https://github.com/spring-cloud/spring-cloud-static</a></code></li><li class="listitem"><code class="literal">releaser.git.documentation-branch</code> - Branch to check out for the documentation project. Defaults to <code class="literal">gh-pages</code></li><li class="listitem"><code class="literal">releaser.git.oauth-token</code> - GitHub OAuth token to be used to interact with GitHub repo.</li><li class="listitem"><code class="literal">releaser.git.username</code> - Optional Git username. If not passed keys will be used for authentication.</li><li class="listitem"><code class="literal">releaser.git.password</code> - Optional Git password. If not passed keys will be used for authentication.</li><li class="listitem"><code class="literal">releaser.git.number-of-checked-milestones</code> - In order not to iterate endlessly over milestones we introduce a threshold of milestones that
we will go through to find the matching milestone. Defaults to <code class="literal">10</code></li><li class="listitem"><code class="literal">releaser.maven.build-command</code> - Command to be executed to build the project. Defaults to <code class="literal">./mvnw clean install -Pdocs</code></li><li class="listitem"><code class="literal">releaser.maven.deploy-command</code> - Command to be executed to deploy a built project". Defaults to <code class="literal">./mvnw deploy -DskipTests -Pfast</code></li><li class="listitem"><code class="literal">releaser.maven.publish-docs-commands</code> - Command to be executed to deploy a built project. If present <code class="literal">{{version}}</code> will be replaced by the proper version.
Defaults to the standard Spring Cloud wget and execution of ghpages.</li><li class="listitem"><code class="literal">releaser.maven.system-properties</code> - Additional system properties that should be passed to any commands. If present <code class="literal">{{systemProps}}</code> will be replaced by the contents of this property.</li><li class="listitem"><code class="literal">releaser.maven.wait-time-in-minutes</code> - Max wait time in minutes for the process to finish. Defaults to <code class="literal">20</code></li><li class="listitem"><code class="literal">releaser.gradle.gradle-props-substitution</code> - a map containing a <code class="literal">key</code> which is a property key inside <code class="literal">gradle.properties</code> and a <code class="literal">value</code> of
a project name. E.g. in <code class="literal">gradle.properties</code> you have <code class="literal">foo=1.0.0.BUILD-SNAPSHOT</code> and you would like <code class="literal">spring-cloud-contract</code> version to
@@ -114,18 +121,19 @@ Example for application arguments: <code class="literal">java -jar target/spring
run a script (e.g. <code class="literal">scripts/foo.sh</code>) then inside <code class="literal">foo.sh</code> if you call a Maven build <code class="literal">./mvnw clean install</code>
then <span class="strong"><strong>remember to pass all arguments of the script there too</strong></span>. E.g. <code class="literal">./mvnw clean install ${@}</code>. That&#8217;s because
the releaser will pass any system properties to the <code class="literal">build</code> / <code class="literal">deploy</code> command, such as system properties
with keys and we need them to be passed inside the command executed by the releaser.</p></td></tr></table></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="_examples" href="#_examples"></a>1.6&nbsp;Examples</h2></div></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="_keeping_configuration_in_the_project" href="#_keeping_configuration_in_the_project"></a>1.6.1&nbsp;Keeping configuration in the project</h3></div></div></div><p>If your project has some custom configuration (e.g. Spring Cloud Contract needs a script to be executed
with keys and we need them to be passed inside the command executed by the releaser.</p></td></tr></table></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="_examples" href="#_examples"></a>1.7&nbsp;Examples</h2></div></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="_keeping_configuration_in_the_project" href="#_keeping_configuration_in_the_project"></a>1.7.1&nbsp;Keeping configuration in the project</h3></div></div></div><p>If your project has some custom configuration (e.g. Spring Cloud Contract needs a script to be executed
to build the project and properly merge the docs) then you can put a file named e.g. <code class="literal">releaser.yml</code> under <code class="literal">config</code>
folder and run your application like this:</p><pre class="programlisting">$ wget http://repo.spring.io/libs-milestone/org/springframework/cloud/internal/spring-cloud-release-tools-spring/<span class="hl-number">1.0</span>.<span class="hl-number">0.</span>M1/spring-cloud-release-tools-spring-<span class="hl-number">1.0</span>.<span class="hl-number">0.</span>M1.jar -O ../spring-cloud-release-tools-spring-<span class="hl-number">1.0</span>.<span class="hl-number">0.</span>M1.jar
$ java -jar target/spring-cloud-release-tools-spring-<span class="hl-number">1.0</span>.<span class="hl-number">0.</span>M1.jar --spring.config.name=releaser</pre><div class="tip" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Tip"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Tip]" src="images/tip.png"></td><th align="left">Tip</th></tr><tr><td align="left" valign="top"><p>Notice that we&#8217;re downloading the jar to a parent folder, not to <code class="literal">target</code>. That&#8217;s because <code class="literal">target</code> get cleaned
during the build process</p></td></tr></table></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="_specifying_a_branch" href="#_specifying_a_branch"></a>1.6.2&nbsp;Specifying A Branch</h3></div></div></div><p>By deafult the releaser will default to using the <code class="literal">master</code> branch of <code class="literal">spring-cloud-release</code>.
If you would like to use another branch you can specify it using the <code class="literal">releaser.pom.branch</code> property.</p><pre class="programlisting">$ java -jar spring-cloud-release-tools-spring-<span class="hl-number">1.0</span>.<span class="hl-number">0.</span>M1.jar --releaser.pom.branch=Camden.SR6</pre></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="_using_environment_variables" href="#_using_environment_variables"></a>1.6.3&nbsp;Using Environment Variables</h3></div></div></div><p>In some cases it might be easier to specify environment variables instead of passing parameters to
during the build process</p></td></tr></table></div><div class="important" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Important"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Important]" src="images/important.png"></td><th align="left">Important</th></tr><tr><td align="left" valign="top"><p>For the meta-releaser to work we assume that the path to the
configuration file is always <code class="literal">config/releaser.yml</code>.</p></td></tr></table></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="_specifying_a_branch" href="#_specifying_a_branch"></a>1.7.2&nbsp;Specifying A Branch</h3></div></div></div><p>By deafult the releaser will default to using the <code class="literal">master</code> branch of <code class="literal">spring-cloud-release</code>.
If you would like to use another branch you can specify it using the <code class="literal">releaser.pom.branch</code> property.</p><pre class="programlisting">$ java -jar spring-cloud-release-tools-spring-<span class="hl-number">1.0</span>.<span class="hl-number">0.</span>M1.jar --releaser.pom.branch=Camden.SR6</pre></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="_using_environment_variables" href="#_using_environment_variables"></a>1.7.3&nbsp;Using Environment Variables</h3></div></div></div><p>In some cases it might be easier to specify environment variables instead of passing parameters to
<code class="literal">releaser</code>. For example, you might want to use environment variables if you are going to be
releasing multiple projects, this keeps you from having to specify the same parameters for
each release</p><pre class="programlisting">$ <span xmlns:d="http://docbook.org/ns/docbook" class="hl-keyword">export</span> RELEASER_POM_BRANCH=Dalston.RELEASE
$ <span xmlns:d="http://docbook.org/ns/docbook" class="hl-keyword">export</span> RELEASER_GIT_OAUTH_TOKEN=...
$ wget http://repo.spring.io/libs-milestone/org/springframework/cloud/internal/spring-cloud-release-tools-spring/<span class="hl-number">1.0</span>.<span class="hl-number">0.</span>M1/spring-cloud-release-tools-spring-<span class="hl-number">1.0</span>.<span class="hl-number">0.</span>M1.jar -O spring-cloud-release-tools-spring-<span class="hl-number">1.0</span>.<span class="hl-number">0.</span>M1.jar
$ java -jar target/spring-cloud-release-tools-spring-<span class="hl-number">1.0</span>.<span class="hl-number">0.</span>M1.jar --releaser.working-dir=/path/to/project/root</pre></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="_faq" href="#_faq"></a>1.7&nbsp;FAQ</h2></div></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="_jschexception_auth_fail" href="#_jschexception_auth_fail"></a>1.7.1&nbsp;JSchException: Auth fail</h3></div></div></div><p>I got such an exception</p><pre class="screen">Caused by: org.eclipse.jgit.errors.TransportException: git@github.com:spring-cloud/spring-cloud-sleuth.git: Auth fail
$ java -jar target/spring-cloud-release-tools-spring-<span class="hl-number">1.0</span>.<span class="hl-number">0.</span>M1.jar --releaser.working-dir=/path/to/project/root</pre></div></div><div class="section"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="_faq" href="#_faq"></a>1.8&nbsp;FAQ</h2></div></div></div><div class="section"><div class="titlepage"><div><div><h3 class="title"><a name="_jschexception_auth_fail" href="#_jschexception_auth_fail"></a>1.8.1&nbsp;JSchException: Auth fail</h3></div></div></div><p>I got such an exception</p><pre class="screen">Caused by: org.eclipse.jgit.errors.TransportException: git@github.com:spring-cloud/spring-cloud-sleuth.git: Auth fail
at org.eclipse.jgit.transport.JschConfigSessionFactory.getSession(JschConfigSessionFactory.java:160) ~[org.eclipse.jgit-4.6.0.201612231935-r.jar!/:4.6.0.201612231935-r]
at org.eclipse.jgit.transport.SshTransport.getSession(SshTransport.java:137) ~[org.eclipse.jgit-4.6.0.201612231935-r.jar!/:4.6.0.201612231935-r]
at org.eclipse.jgit.transport.TransportGitSsh$SshPushConnection.&lt;init&gt;(TransportGitSsh.java:322) ~[org.eclipse.jgit-4.6.0.201612231935-r.jar!/:4.6.0.201612231935-r]