This is an automated email from the ASF dual-hosted git repository.
ntimofeev pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/cayenne-website.git
The following commit(s) were added to refs/heads/master by this push:
new 8995427 Update release guide
8995427 is described below
commit 899542703b535d08cfe7df3f1f6ebda9f641f665
Author: Nikita Timofeev <[email protected]>
AuthorDate: Wed Jun 9 15:46:59 2021 +0300
Update release guide
---
src/main/assets/scripts/main.js | 2 +
src/main/site/content/dev/release-guide.md | 103 ++++++++++++++++-------------
2 files changed, 59 insertions(+), 46 deletions(-)
diff --git a/src/main/assets/scripts/main.js b/src/main/assets/scripts/main.js
index d1ca76a..19faa1d 100644
--- a/src/main/assets/scripts/main.js
+++ b/src/main/assets/scripts/main.js
@@ -29,12 +29,14 @@ var xml = require('highlight.js/lib/languages/xml.js');
var java = require('highlight.js/lib/languages/java.js');
var sql = require('highlight.js/lib/languages/sql.js');
var groovy = require('highlight.js/lib/languages/groovy.js');
+var bash = require('highlight.js/lib/languages/bash.js');
function initHljs() {
hljs.registerLanguage('xml', xml);
hljs.registerLanguage('java', java);
hljs.registerLanguage('sql', sql);
hljs.registerLanguage('groovy', groovy);
+ hljs.registerLanguage('bash', bash);
hljs.initHighlightingOnLoad();
}
diff --git a/src/main/site/content/dev/release-guide.md
b/src/main/site/content/dev/release-guide.md
index f5cd4d1..c0d9fa2 100644
--- a/src/main/site/content/dev/release-guide.md
+++ b/src/main/site/content/dev/release-guide.md
@@ -20,7 +20,7 @@ More info can be found at
[http://www.apache.org/dev/release-signing.html](http:
* Make sure "apache-releases" repository is configured in
*~/.m2/settings.xml* and an appropriate password is setup. See [this
page](http://www.apache.org/dev/publishing-maven-artifacts.html)
for details.
-* As Cayenne has modules which require Java 1.8, you should use Java 1.8 to
perform the release.
+* As Cayenne has modules which require Java 1.8, you should use at least Java
1.8 to perform the release.
{{% gap %}}
@@ -30,15 +30,16 @@ More info can be found at
[http://www.apache.org/dev/release-signing.html](http:
* Edit `UPGRADE-NOTES.txt` if there is anything to add there.
* Update `RELEASE-NOTES.txt` with actual release name and current date as a
release date.
* Check Sources Compliance with [RAT](http://creadur.apache.org/rat/). To run
RAT,
-download the distro and unpack it somewhere. You can run it directly, or use a
convenience script available at the root of Cayenne
-source. Then read the report and fix any issues.
-
- cd cayenne
- ./rat.sh ~/Desktop/apache-rat-0.14-SNAPSHOT.jar > report.txt
-
- As an alternative you could use Apache RAT maven plugin already configured
in the Cayenne:
-
- mvn apache-rat:check
+ download the distro and unpack it somewhere. You can run it directly, or use
a convenience script available at the root of Cayenne
+ source. Then read the report and fix any issues.
+ ```bash
+ cd cayenne
+ ./rat.sh ~/Desktop/apache-rat-0.14-SNAPSHOT.jar > report.txt
+ ```
+ As an alternative you could use Apache RAT maven plugin already configured
in the Cayenne:
+ ```bash
+ mvn apache-rat:check
+ ```
{{% gap %}}
@@ -47,11 +48,12 @@ source. Then read the report and fix any issues.
* Create a Git tag and Create Maven Staging Repository:
-
- cd cayenne
- mvn release:clean
- mvn release:prepare -DpreparationGoals="clean install"
-DautoVersionSubmodules=true
- mvn release:perform -P gpg [-Dgpg.keyname=B8AF90BF]
+ ```bash
+ cd cayenne
+ mvn release:clean
+ mvn release:prepare -DpreparationGoals="clean install"
-DautoVersionSubmodules=true
+ mvn release:perform -P gpg [-Dgpg.keyname=B8AF90BF]
+ ```
* Close the staging repo. Login to
[https://repository.apache.org/](https://repository.apache.org/) with
Apache ID/password, go to "Staging Repositories" page. Select a staging
@@ -67,37 +69,44 @@ be used by the people voting on Cayenne. It may look like
this:
* Switch to the release tag created above.
-* Build source package (it will be the basis for the binary packages built
-in the next steps) :
-
- mvn clean install -Passembly,src
+* Build source package (it will be the basis for the binary packages built in
the next steps) :
+ ```bash
+ mvn clean install -Passembly,src
+ ```
-* Build binary assemblies. Take *"assembly/target/cayenne-XXX-src.tar.gz"*,
unpack it somewhere, and
-perform binary builds from the unpacked directory (NOT FROM GIT CHECKOUT).
_Release manager may skip
-running unit tests from here, as shown
-below, although release evaluators should use the src assembly for [unit
testing](running-unit-tests.html)
- and other kinds of testing._
-
- mvn clean install -Passembly,generic -Dmaven.test.skip=true
-
- # You will need to do this on OS X, and use at least Java 1.8
- mvn clean install -Passembly,mac -Dmaven.test.skip=true
+* Build binary assemblies. _Release manager may skip running unit tests from
here, as shown
+ below, although release evaluators should use the src assembly for [unit
testing](running-unit-tests.html)
+ and other kinds of testing._ For further details on a general Cayenne build
process check [this page](building-cayenne.html).
+
+ * Take *"assembly/target/cayenne-XXX-src.tar.gz"*, unpack it somewhere, and
+ perform binary builds from the unpacked directory (NOT FROM GIT
CHECKOUT).
+
+ * Per Apache release guidelines there shouldn't be any binaries in a
release, so you need manually copy
+ Gradle wrapper. Just cp ./cayenne-gradle-plugin/gradle/ to the
corresponding folder in unpacked sources.
+
+ * Build binary artifacts
+ ```bash
+ mvn clean package -Passembly,generic -DskipTests
+
+ # You will need to do this on OS X
+ mvn clean package -Passembly,mac -DskipTests
# You will need to do this on Windows
- mvn clean install -Passembly,windows -Dmaven.test.skip=true
-
- For further details on a general Cayenne build process check [this
page](building-cayenne.html).
+ mvn clean package -Passembly,windows -DskipTests
+ ```
* Signing assemblies
-You can find additional information in official Apache [Release Distribution
policy](http://www.apache.org/dev/release-distribution)
-and on [this page](http://www.apache.org/dev/release-signing.html).
-Release manager key must be in the project KEYS file. Signing is a manual
-procedure not included in the Ant or Maven script. Here is how it might
-work ("-u" option can be omitted if you have only one GPG key):
-
- gpg -a -b -u B8AF90BF cayenne-X.X.tar.gz
- gpg --print-md SHA512 cayenne-X.X.tar.gz > cayenne-X.X.tar.gz.sha512
+ You can find additional information in official Apache [Release Distribution
policy](http://www.apache.org/dev/release-distribution)
+ and on [this page](http://www.apache.org/dev/release-signing.html).
+ Release manager key must be in the project KEYS file. Signing is a manual
+ procedure not included in the Ant or Maven script. Here is how it might
+ work ("-u" option can be omitted if you have only one GPG key):
+
+ ```bash
+ gpg -a -b -u B8AF90BF cayenne-X.X.tar.gz
+ gpg --print-md SHA512 cayenne-X.X.tar.gz > cayenne-X.X.tar.gz.sha512
+ ```
* Assemblies, signature and checksum files are committed to the special SVN
repo
used for staging development releases:
[https://dist.apache.org/repos/dist/dev/cayenne/](https://dist.apache.org/repos/dist/dev/cayenne/).
@@ -137,9 +146,10 @@ the equivalent source).
select the staging repo and click "Release".
* Publish downloadable assemblies by moving them to the release repo:
-
- $ svn mv https://dist.apache.org/repos/dist/dev/cayenne/X.X \
- https://dist.apache.org/repos/dist/release/cayenne/
+ ```bash
+ svn mv https://dist.apache.org/repos/dist/dev/cayenne/X.X \
+ https://dist.apache.org/repos/dist/release/cayenne/
+ ```
{{% gap %}}
@@ -147,10 +157,11 @@ select the staging repo and click "Release".
## After the release
-* Delete a previous version of Cayenne release of the same branch from the
dist server.
+* Delete a **previous version** of Cayenne release of the same branch from the
dist server.
It should be already [archived by Apache]
(http://www.apache.org/dev/release.html#when-to-archive). Do this with an svn
command like this:
-
- $ svn rm https://dist.apache.org/repos/dist/release/cayenne/Y.Y
+ ```bash
+ svn rm https://dist.apache.org/repos/dist/release/cayenne/Y.Y
+ ```
* [Tell
Jira](https://issues.apache.org/jira/plugins/servlet/project-config/CAY/versions)
that the release has been released. Ensure there is another milestone or