How to build a release for LemonLDAP::NG ======================================== The version ----------- - The release version should be updated in the following location: * changelog (add a changelog from JIRA for the target version) * Main modules (Common.pm/Handler.pm/Portal.pm/Manager.pm) * Makefile.PL for cross-dependencies * Doxyfile - Then update packages information with: $ make clean && make cpan - Version must also be updated in RPM and Debian build files - rpm/lemonldap-ng.spec: update versions and add changelog entry - debian/changelog: add changelog entry Before release -------------- - Update documentation: $ make documentation For minor release ----------------- - Tag the version on SVN from the branch: $ svn cp branches/lemonldap-ng_version_VERSION-bugfixes tags/lemonldap-ng_version_VERSION For major release ----------------- - Create a branch on SVN from the trunk: $ svn cp trunk branches/lemonldap-ng_version_VERSION-bugfixes - Tag the version on SVN from the branch: $ svn cp branches/lemonldap-ng_version_VERSION-bugfixes tags/lemonldap-ng_version_VERSION Make the distribution --------------------- - CPAN packages: $ make clean && make cpan - Tarball: $ make clean && make dist - RedHat packaging: see rpm/README - Debian packaging: Note: official packages build is now hosted on https://github.com/guimard/LemonLDAP--NG-Debian-packaging Untar the archive and launch: $ make debian-packages Packages are in /tmp Sign packages: $ dpkg-sig -p --sign builder /tmp/*.deb Upload the distribution --------------------- - 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 Copy all generated files (*.deb, *.dsc, *.changes, ...): $ scp *.deb *.dsc *.changes *.debian.tar.gz *.orig.tar.gz lemonldapng@lemonldap-ng.org:incoming/ Then connect on the server and launch reprepro: $ ssh lemonldapng@lemonldap-ng.org lemonldapng@lemonldap-ng.org$ cd deb/ lemonldapng@lemonldap-ng.org$ reprepro --ask-passphrase -Vb . include squeeze ../incoming/lemonldap-ng_VERSION_i386.changes See also reprepro configuration file: 'distributions' Site ---- - Update links on the download page - Close the version on JIRA and create a new one Spread the word --------------- - News on OW2 forge - Twitter account - Freshmeat - IRC channel subject - User mailing list - Optional: blogs and news sites (LinuxFR, etc.)