RELEASE 3.14 KB
Newer Older
1 2 3 4 5 6 7
How to build a release for LemonLDAP::NG
========================================

The version
-----------

- The release version should be updated in the following location:
Xavier Guimard's avatar
Xavier Guimard committed
8
* changelog (add a changelog from GitLab for the target version)
9 10
* Main modules (Common.pm/Handler.pm/Portal.pm/Manager.pm)
* Makefile.PL for cross-dependencies
Clément OUDOT's avatar
Clément OUDOT committed
11
* Doxyfile
12 13

- Then update packages information with:
14
$ make clean && make cpan
15 16

- Version must also be updated in RPM and Debian build files
17 18
  - rpm/lemonldap-ng.spec: update versions and add changelog entry
  - debian/changelog: add changelog entry
19 20 21 22 23

Before release
--------------

- Update documentation:
24
$ make documentation
25

Clément OUDOT's avatar
Clément OUDOT committed
26 27 28
- Translate documentation
$ make fr-doc

Xavier Guimard's avatar
Xavier Guimard committed
29 30 31
- Update debian/changelog
  launch just `dch -r` and force save (":w" and ot ":x")

Clément OUDOT's avatar
Clément OUDOT committed
32 33 34
- Check Debian packages quality
$ cme check dpkg

35 36 37
For minor release
-----------------

Clément OUDOT's avatar
Clément OUDOT committed
38
- Tag the version on SVN from the branch:
39
$ svn cp branches/lemonldap-ng_version_VERSION-bugfixes tags/lemonldap-ng_version_VERSION
40 41 42 43

For major release
-----------------

Clément OUDOT's avatar
Clément OUDOT committed
44
- Create a branch on SVN from the trunk:
45
$ svn cp trunk branches/lemonldap-ng_version_VERSION-bugfixes
46

47 48
- Tag the version on SVN from the branch:
$ svn cp branches/lemonldap-ng_version_VERSION-bugfixes tags/lemonldap-ng_version_VERSION
49

50 51 52 53
- Change "latest" symlink in dokuwiki 

- Edit scripts/doc.pl in trunk to point on the new documentation path

54 55
Make the distribution
---------------------
56

57 58
- CPAN packages:
$ make clean && make cpan
59 60

- Tarball:
61 62
$ make clean && make dist

Clément OUDOT's avatar
Clément OUDOT committed
63 64 65 66 67 68
- RedHat packaging:

Create the RPM specific tarball:
$ make clean && make rpm-dist

Next steps: see rpm/README
69 70 71

- Debian packaging:

72 73 74 75
Create the debian specific tarball:
$ make clean && make debian-dist

Untar the debian archive and launch:
76 77 78 79 80 81
$ make debian-packages

Packages are in /tmp

Sign packages:
$ dpkg-sig -p --sign builder /tmp/*.deb
82 83


84 85
Upload the distribution
---------------------
86

87 88 89 90 91 92 93 94 95 96 97
- CPAN:
Upload modules tarballs (generated by make cpan)

- OW2 Forge:
Upload dist and bundles

- RPM: see rpm/REDAME

- DEB:
The DEB repository is hosted on http://lemonldap-ng.org/deb

Clément OUDOT's avatar
Clément OUDOT committed
98 99
Copy all generated files (*.deb):
$ scp *.deb lemonldapng@lemonldap-ng.org:incoming/
100 101 102 103

Then connect on the server and launch reprepro:
$ ssh lemonldapng@lemonldap-ng.org
lemonldapng@lemonldap-ng.org$ cd deb/
Clément OUDOT's avatar
Clément OUDOT committed
104 105
lemonldapng@sd-22107:~/deb$ reprepro --ask-passphrase -Vb . includedeb stable ../incoming/*VERSION*deb
lemonldapng@sd-22107:~/deb$ reprepro --ask-passphrase -Vb . includedeb 2.0 ../incoming/*VERSION*deb
106 107

See also reprepro configuration file: 'distributions'
108

Clément OUDOT's avatar
Clément OUDOT committed
109 110 111 112 113
- Docker:
Build a new image from https://github.com/LemonLDAPNG/lemonldap-ng-docker
Tag image to latest
Upload on Docker hub

114 115 116 117 118 119 120 121 122
Site
----

- Update links on the download page
- Close the version on JIRA and create a new one

Spread the word
---------------

Clément OUDOT's avatar
Clément OUDOT committed
123 124 125 126
- News on OW2 projects page: https://projects.ow2.org/bin/view/lemonldap-ng/
- Twitter account / Facebook page
- IRC channel subject and Mattermost
- Mailing lists: lemonldap-ng-users / lemonldap-ng-announces
127 128
- Optional: blogs and news sites (LinuxFR, etc.)

Xavier Guimard's avatar
Xavier Guimard committed
129 130 131 132 133 134 135
After release
-------------

- Update debian/changelog
$ dch -v <New number>-1 (and write "New release")
- Update $VERSION anywhere