Revision d44a042fd597aa7894f2d05d9ea4aeda6e796ea6 authored by Maxime Besson on 02 April 2019, 20:38:24 UTC, committed by Maxime Besson on 03 April 2019, 09:20:24 UTC
Relating to issue #1668, the proposed fix works when there is only one
service provider to logout of.

Now that multiple service provider logout is starting to work again on
2.0, we cannot read the remote_ProviderID from the logout object because
it is only filled by lasso when actually building the response.

Instead, we ignore any error that could occur when building the
response, log a warning and show the portal instead. Still better than
an internal server error.
1 parent 0ca4d1a
Raw File
RELEASE
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 GitLab for the target version)
* 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-wiki.pl >/tmp/prmlist.txt

  Replace https://lemonldap-ng.org/documentation/X.X/parameterlist by
  /tmp/prmlist.txt content
  
  $ make documentation

- 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

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

- Change "latest" symlink in dokuwiki 

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

Make the distribution
---------------------

- CPAN packages:
$ make clean && make cpan

- Tarball:
$ make clean && make dist

- RedHat packaging:

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

Next steps: 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/REDAME

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

Copy all generated files (*.deb):
$ scp *.deb 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@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

See also reprepro configuration file: 'distributions'

- 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

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

- 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
- Optional: blogs and news sites (LinuxFR, etc.)

After release
-------------

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

back to top