Skip to content

Commit 633592e

Browse files
committed
update readme and release instructions
close #142
1 parent e02ba4a commit 633592e

File tree

2 files changed

+86
-40
lines changed

2 files changed

+86
-40
lines changed

README.md

Lines changed: 32 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -1,49 +1,41 @@
1-
eXist-db Documentation
2-
======================
1+
# eXist-db Documentation
32
[![Build Status](https://travis-ci.org/eXist-db/documentation.svg?branch=master)](https://travis-ci.org/eXist-db/documentation)
3+
[![docbook version](https://img.shields.io/badge/docbook-4.5-19a5a4.svg)](http://docbook.org/xml/4.5/)
4+
[![docbook version](https://img.shields.io/badge/eXist_db-3.5.0-blue.svg)](http://www.exist-db.org/exist/apps/homepage/index.html)
45

5-
This repository contains the official documentation for the eXist-db Native XML database and the application for browsing it.
6+
<img src="src/main/xar-resources/icon.png" align="left" width="15%"/>
67

7-
## Resources
8+
This repository contains the official documentation for the [eXist-db native XML database](http://www.exist-db.org) and the application for browsing it. You can browse the latest release of the documentation on [eXist-db homepage](http://exist-db.org/exist/apps/doc/). User reporting errors should check the [contributions](#contributions) section below. Core-contributors preparing a release should consult the [release procedure](RELEASE.md)
89

9-
- Browse the latest release of the documentation at http://exist-db.org/exist/apps/doc/.
10-
- The documentation app is included by default in the eXist-db installer. Just go to your eXist server's Dashboard and select Documentation.
11-
- Update to the latest release via the eXist-db package manager or via the eXist-db.org public app repository at <http://exist-db.org/exist/apps/public-repo/>.
1210

13-
## Building from source
14-
15-
1. Dependencies: Maven 3.x
16-
17-
2. Clone the repository to your system:
18-
19-
```bash
20-
$ git clone https://github.com/exist-db/documentation.git exist-documentation
21-
```
22-
23-
3. Build the documentation application:
24-
```bash
25-
$ cd exist-documentation
26-
$ mvn clean package
27-
```
28-
29-
4. An EXPath Application Package (.xar file) is deposited in the `target` directory
11+
## Dependencies
12+
- [Maven](https://maven.apache.org): 3.x
13+
- [eXist-db](http://exist-db.org): 3.5.0
3014

31-
5. Install this file via the Dashboard > Package Manager.
15+
## Installation
16+
- The default eXist-db installer includes the documentation app. Just go to your eXist server's Dashboard and select Documentation.
17+
- If you need to install an older version, you can download EXPath Application Packages (`.xar` files) of previous [releases](https://github.com/eXist-db/documentation/releases) from GitHub.
18+
- Update to the latest release via the eXist-db package manager or via the eXist-db.org public app repository at [http://exist-db.org/exist/apps/public-repo/](http://exist-db.org/exist/apps/public-repo/).
3219

33-
Find an area of the documentation that needs to be improved? Please raise an issue and submit a pull request!
20+
## Contributions
21+
Found an area of the documentation that needs to be improved? Please raise an [issue](https://github.com/eXist-db/documentation/issues) or better yet submit a [pull request](https://github.com/eXist-db/documentation/pulls)!
3422

23+
Our test-suite performs a validation check on all articles when you open a pull request. You can speed up the review process by running `mvn validate` locally before submitting a pull request.
3524

36-
## Building a Release from source
37-
38-
1. Follow the instructions from [Building from source](#building-from-source)
39-
40-
2. Create a Release:
41-
42-
```bash
43-
$ mvn release:prepare
44-
$ mvn release:perform
45-
```
46-
47-
3. An EXPath Application Package (.xar file) is deposited in the `target` directory
48-
49-
4. If you are a core contributor, you should then commit and push.
25+
## Building from source
26+
1. Clone the repository to your system:
27+
```bash
28+
$ git clone https://github.com/exist-db/documentation.git exist-documentation
29+
```
30+
31+
2. Build the documentation application:
32+
```bash
33+
$ cd exist-documentation
34+
$ mvn clean package
35+
```
36+
The compiled `.xar` file is located in the `/target` directory
37+
38+
3. Install this file via the Dashboard > Package Manager.
39+
40+
## License
41+
LGPLv2.1 [eXist-db.org](http://exist-db.org/exist/apps/homepage/index.html)

RELEASE.md

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
# Release Procedure
2+
Core-contributors should follow these steps when publishing a new release of the documentation app.
3+
4+
## Local Environment Checks
5+
- maven requires a valid gpg key associated with your GitHub account to publish a new release, to check your available keys:
6+
```bash
7+
gpg --list-keys
8+
```
9+
- You can perform a dry-run of the release procedure by executing
10+
```bash
11+
$ mvn -DdryRun=true release:prepare
12+
```
13+
- Dry-runs still create files that will interfere with regular releases. You should therefore clean up afterwards by running:
14+
```bash
15+
$ mvn release:rollback
16+
```
17+
18+
19+
## Preparing the Release Commit
20+
1. Merge outstanding and reviewed PRs.
21+
22+
2. Set the `exist.version` in `pom.xml` to prevent users of older exist releases, from installing the wrong documentation locally. Since the canonical version needs to run on exist-db.org please make sure that the main server can actually run the latest documentation, and raise an issue if necessary.
23+
24+
3. To generate the release notes run:
25+
```bash
26+
$ mvn changes:github-report
27+
```
28+
29+
this will generate a `github-report.html` in `target/site` you can copy the list of changes into `xar-assembly.xml` describing which articles changed and how.
30+
31+
## Building the Release
32+
4. Follow the instructions from [Building from source](README.md#building-from-source)
33+
34+
5. To create a release run:
35+
```bash
36+
$ mvn release:prepare
37+
$ mvn release:perform
38+
```
39+
40+
When prompted to pick a version number for the release, remember to mirror the [major version](https://github.com/eXist-db/exist/blob/develop/exist-versioning-release.md#versioning-scheme) of the current eXist-db release. So for exist-db version `3.x.x` the documentation's version should be `3.y.y`. The minor and patch numbers remain independent of each other.
41+
42+
You can find the EXPath Application Package (`.xar` file) for the release in the `/target` directory
43+
44+
## Publishing the Release
45+
Release are published in two locations:
46+
47+
6. GitHub: Repo and [releases](https://github.com/eXist-db/documentation/releases)
48+
- commit and push as usual
49+
- maven should have automatically created a release tag, update it by copying the release notes from `xar-assembly.xml`
50+
- check to make sure that the latest `.xar` file is attached to the GitHub release
51+
52+
7. [exist-db.org](http://exist-db.org): App repo and documentation homepage
53+
- Inform the exist-db.org admins that the documentation app should be deployed on the server.
54+
- Add documentation app to the public application repository.

0 commit comments

Comments
 (0)