jami-docs/developer/processes/release-process.md

62 lines
1.9 KiB
Markdown
Raw Permalink Normal View History

Release process
===============
Each Jami sub-project has its own repository, build process, integration
cycle and so on. More over the **Jami architecture is split into two
2018-05-18 04:39:55 +08:00
independent modules**: LibRing *(daemon)* and clients.
Having a unique revision is not a solution in this situation. The
retained idea is having a global "state" and **various updates per
module**.
For consistency, **each Jami module has to follow the same process** as
2018-05-18 04:39:55 +08:00
described in following points. But not all modules have to be modified
in same time.
------------------------------------------------------------------------
**PROCESS FLOW:**
2018-05-18 04:48:14 +08:00
1 | 2 | 3 | 4 | 5 | 6
:-----:|:-----:|:-----:|:-----:|:-----:|:-----:
Redmine Ticket |Repository Preparation |Testing |Push tags |Packaging | Advertisement
2018-05-18 04:39:55 +08:00
------------------------------------------------------------------------
Redmine Ticket
--------------
Create a new Task on redmine attached to the release story, for the
right sub-module. Set the title to "Release Major.Minor.Micro", with the
appropriate version number.
Repository Preparation
----------------------
**This section was outdated and removed**
Testing
-------
* Remove any existing Jami installations from your machine.
2018-05-18 04:48:14 +08:00
* Start with clean git tree by running `git clean -d -f -x` from the top
2018-05-18 04:39:55 +08:00
level directory of the project.
2018-05-18 04:48:14 +08:00
* Build and install the daemon and client, see How\\\_to\\\_build
* Run the test suite in daemon and client, on different distributions and
2018-05-18 04:39:55 +08:00
machines.
2018-05-18 04:48:14 +08:00
* Run manual tests
* Try registering and using different accounts.
* Try making calls between Jami and other free softphones (Ekiga,
2018-05-18 04:39:55 +08:00
Linphone), as well as hardware VoIP phones.
2018-05-18 04:48:14 +08:00
* To catch uninitialized values being used, memory leaks, invalid frees,
etc. run `valgrind --track-origins=yes --db-attach=yes ./bin/dring`
2018-05-18 04:39:55 +08:00
2018-05-18 04:48:14 +08:00
Push tags
--------
2018-05-18 04:39:55 +08:00
2018-05-18 04:48:14 +08:00
`git push --tags`
2018-05-18 04:39:55 +08:00
Packaging
---------
cf [This page](/contribute#Packaging)