You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
135 lines
3.3 KiB
135 lines
3.3 KiB
How to build a release for LemonLDAP::NG
|
|
========================================
|
|
|
|
The version
|
|
-----------
|
|
|
|
- The release version should be updated in the following location:
|
|
* changelog: change version in scripts/generate-changelog.pl and run it
|
|
* Main modules (Common.pm/Handler.pm/Portal.pm/Manager.pm)
|
|
* Makefile.PL for cross-dependencies
|
|
|
|
- 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 languages (needs a Transifex token)
|
|
$ ./scripts/download_translations
|
|
|
|
- Update documentation:
|
|
$ ./scripts/parameters-for-doc.pl > doc/sources/admin/parameterlist.rst
|
|
|
|
- Update changelog:
|
|
$ ./scripts/generate-changelog.pl
|
|
|
|
This update "changelog" file using GitLab issues (tags Bug, New feature,
|
|
Improvement)
|
|
|
|
- Update debian/changelog
|
|
launch just `dch -r` and force save (":w" and ot ":x")
|
|
|
|
- Check Debian packages quality
|
|
$ cme check dpkg
|
|
|
|
- Update doc/admin/documentation.rst to display vulnerable packaged versions
|
|
|
|
For minor release
|
|
-----------------
|
|
|
|
- Go on gitlab and create a new tag: https://gitlab.ow2.org/lemonldap-ng/lemonldap-ng/tags/new
|
|
|
|
For major release
|
|
-----------------
|
|
|
|
- Go on gitlab and create a new branch: https://gitlab.ow2.org/lemonldap-ng/lemonldap-ng/branches/new
|
|
|
|
- Go on gitlab and create a new tag: https://gitlab.ow2.org/lemonldap-ng/lemonldap-ng/tags/new
|
|
|
|
Make the distribution
|
|
---------------------
|
|
|
|
- CPAN packages:
|
|
$ make clean && make cpan
|
|
|
|
- Tarball:
|
|
$ make clean && make dist
|
|
|
|
- RedHat packaging:
|
|
|
|
See rpm/README
|
|
|
|
- Debian packaging:
|
|
|
|
Create the debian specific tarball:
|
|
$ make clean && make debian-dist
|
|
|
|
Untar the debian 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 Release:
|
|
Upload dist and bundles on sftp://release-up.ow2.org/projects/lemonldap
|
|
|
|
- RPM: see rpm/README
|
|
|
|
- DEB:
|
|
The DEB repository is hosted on https://lemonldap-ng.org/deb
|
|
|
|
Copy all generated files (*.deb):
|
|
$ scp *.deb lemonldap-ng@lemonldap-ng.org:incoming/
|
|
|
|
On the server, add packages is the appropriate repository, for example:
|
|
$ aptly repo add 2.0 incoming/*
|
|
$ aptly repo add stable incoming/*
|
|
|
|
Publish repositories:
|
|
$ aptly publish update -gpg-key="57144D2148DD706967DBFF7C548B17BF81F18E7A" 2.0
|
|
$ aptly publish update -gpg-key="57144D2148DD706967DBFF7C548B17BF81F18E7A" stable
|
|
|
|
Remove files from incoming directory:
|
|
$ rm incoming/*
|
|
|
|
- Docker:
|
|
Build a new image from https://github.com/LemonLDAPNG/lemonldap-ng-docker
|
|
Tag image to latest
|
|
Upload on Docker hub
|
|
|
|
Site
|
|
----
|
|
|
|
- Update links on the download page
|
|
- Close the milestone on Gitlab and create a new one
|
|
- Update admin documentation and API documentation
|
|
|
|
Spread the word
|
|
---------------
|
|
|
|
- News on OW2 projects page: https://projects.ow2.org/bin/view/lemonldap-ng/
|
|
- Twitter account / Facebook page
|
|
- IRC channel subject and OW2 Rocket.Chat channel
|
|
- Mailing lists: lemonldap-ng-users / lemonldap-ng-announces
|
|
- Optional: blogs and news sites (LinuxFR, etc.)
|
|
|
|
After release
|
|
-------------
|
|
|
|
- Update debian/changelog
|
|
$ dch -v <New number>-1 (and write "New release")
|
|
- Update $VERSION anywhere
|
|
|
|
|