Changes

no edit summary
Line 1: Line 1:  +
Full release process is today done automatically and documented on page [[FAQ_Release_process]]
 +
 +
This page is a draft for evolution requets.
 +
 +
 
= Dolibarr release process =
 
= Dolibarr release process =
 
   
 
   
This document is a draft trying to understand what is going on to release dolibarr.
+
This document is a '''draft'''.
 +
 
 +
The intention is to document what needs to be done to release Dolibarr.
 
   
 
   
''I intend to use it as a base to revamp the whole releasing process.''
+
RD: ''I intend to use it as a base to revamp the whole releasing process.''
 
   
 
   
 
== Officialy maintained ==
 
== Officialy maintained ==
Line 16: Line 23:  
   
 
   
 
''Actually uses the .tgz extension, I'd prefer the more common .tar.gz''
 
''Actually uses the .tgz extension, I'd prefer the more common .tar.gz''
 +
 +
''SO: In my opinion it would be even better if we could use .tar.xz''
 
   
 
   
 
* Zipped archive
 
* Zipped archive
 
   
 
   
''I'd build it from the tarball''
+
RD: ''I'd build it from the tarball''
+
 
 
=== Distribution packages ===
 
=== Distribution packages ===
 
   
 
   
''I'd make these from the release tarball.''
+
RD: ''I'd make these from the release tarball.''
 
   
 
   
 
==== RPM ====
 
==== RPM ====
 
   
 
   
''Can't all of these be unified?''
+
RD: ''Can't all of these be unified?''
+
 
 +
LD: ''This is what Generic below is for but specific versions are needed for distro integration''
 +
 
 +
RD: ''I think that Debian integration is ongoing, what about other distros?''
 +
 
 +
''Isn't this the distribution package maintainer responsibility, not the release managers?''
 +
 
 
* Generic
 
* Generic
 
* Fedora
 
* Fedora
 
   
 
   
''RedHat?''
+
RD: ''RedHat?''
 
   
 
   
 
* Mandriva
 
* Mandriva
 
   
 
   
''Is this really needed? I mean who still uses mandriva these days?''
+
RD: ''Is this really needed? I mean who still uses mandriva these days?''
 
   
 
   
 
* OpenSuse
 
* OpenSuse
Line 44: Line 59:  
* Debian
 
* Debian
 
   
 
   
''Ubuntu?''
+
RD: ''Ubuntu?''
 
   
 
   
 
=== Installers ===
 
=== Installers ===
Line 50: Line 65:  
* Windows (DoliWamp, exe)
 
* Windows (DoliWamp, exe)
 
   
 
   
''This one is the most involved. We need a better spec of the process.''
+
RD: ''This one is the most involved. We need a better spec of the process.''
 
   
 
   
 
== '''Not''' officially maintained ==
 
== '''Not''' officially maintained ==
 
   
 
   
''Need volunteers?''
+
RD: ''Need volunteers?''
 
   
 
   
 
These packages are not officially maintained but are in the source tree. Maybe we'd want to have them work one day or another.
 
These packages are not officially maintained but are in the source tree. Maybe we'd want to have them work one day or another.
Line 62: Line 77:  
* [https://github.com/edumbill/doap/wiki DOAP]
 
* [https://github.com/edumbill/doap/wiki DOAP]
 
   
 
   
''Is this even a package format?''
+
RD: ''Is this even a package format?''
 
   
 
   
 
* Doxygen (Developer documentation)
 
* Doxygen (Developer documentation)
 
   
 
   
''Again, not a package format, but this should certainly be published somewhere for each released version''
+
RD: ''Again, not a package format, but this should certainly be published somewhere for each released version''
 
   
 
   
 
* Launchpad (https://launchpad.net/dolibarr)
 
* Launchpad (https://launchpad.net/dolibarr)
 
   
 
   
''Ubuntu packages and build system?''
+
RD: ''Ubuntu packages and build system?''
 
   
 
   
 
* Live CD
 
* Live CD
 
   
 
   
''Really? What for? Demos? Looks overkill''
+
RD: ''Really? What for? Demos? Looks overkill''
 
   
 
   
 
* [https://build.opensuse.org/project/show/Application:ERP:Dolibarr OpenSuse build system]
 
* [https://build.opensuse.org/project/show/Application:ERP:Dolibarr OpenSuse build system]
 
   
 
   
''This one is pretty cool. Looks like we could leverage its capabilities to automate the builds of our Linux distribution packages.'' ''Credentials needed''
+
RD: ''This one is pretty cool. Looks like we could leverage its capabilities to automate the builds of our Linux distribution packages.'' ''Credentials needed''
 
   
 
   
 
* Virtualmin installer
 
* Virtualmin installer
 
* Proxmox Appliance
 
* Proxmox Appliance
 +
 +
== Nice to have ==
 +
 +
RD: ''Releases that don't exist just yet but would help reaching farther IMHO''
 +
 +
* GitHub releases
 +
 +
* Packagist.org (Compser)
 
   
 
   
 
== Tentative process ==
 
== Tentative process ==
Line 94: Line 117:  
# Commit and Tag version
 
# Commit and Tag version
 
   
 
   
''Better be a [http://git-scm.com/book/en/Git-Basics-Tagging#Signed-Tags signed tag]''
+
RD: ''Better be a [http://git-scm.com/book/en/Git-Basics-Tagging#Signed-Tags signed tag]''
 
   
 
   
 
<ol start="3" style="list-style-type: decimal;">
 
<ol start="3" style="list-style-type: decimal;">
Line 109: Line 132:  
<li><p>TAR reference release</p></li></ol>
 
<li><p>TAR reference release</p></li></ol>
 
   
 
   
''We should also generate checksums''
+
RD: ''We should also generate checksums''
 
   
 
   
''Add a GPG signature?''
+
RD: ''Add a GPG signature?''
 
   
 
   
 
<ol start="10" style="list-style-type: decimal;">
 
<ol start="10" style="list-style-type: decimal;">
Line 127: Line 150:  
# Tag to central repository
 
# Tag to central repository
 
   
 
   
''Credentials needed. This won't get along with a pull request!''
+
RD: ''Credentials needed. This won't get along with a pull request!''
 
   
 
   
 
<ol start="2" style="list-style-type: decimal;">
 
<ol start="2" style="list-style-type: decimal;">
 
<li>Packages, Artifacts (Checksum(s), signature(s)…), ChangeLog and PAD files to dolibarr.org (/home/dolibarr/wwwroot/files)</li></ol>
 
<li>Packages, Artifacts (Checksum(s), signature(s)…), ChangeLog and PAD files to dolibarr.org (/home/dolibarr/wwwroot/files)</li></ol>
 
   
 
   
''Credentials needed''
+
RD: ''Credentials needed''
 
   
 
   
 
<ol start="3" style="list-style-type: decimal;">
 
<ol start="3" style="list-style-type: decimal;">
 
<li>Packages to [http://sourceforge.net/projects/dolibarr/ Sourceforge.net]</li></ol>
 
<li>Packages to [http://sourceforge.net/projects/dolibarr/ Sourceforge.net]</li></ol>
 
   
 
   
''Credentials needed''
+
RD: ''Credentials needed''
 
   
 
   
''Can be automated: [https://sourceforge.net/apps/trac/sourceforge/wiki/Release%20files%20for%20download doc]''
+
RD: ''Can be automated: [https://sourceforge.net/apps/trac/sourceforge/wiki/Release%20files%20for%20download doc]''
 
   
 
   
 
=== Verifiing ===
 
=== Verifiing ===
Line 145: Line 168:  
* ?
 
* ?
 
   
 
   
''This is where checksums comes in handy''
+
RD: ''This is where checksums comes in handy''
 
   
 
   
 
=== Releasing ===
 
=== Releasing ===
Line 151: Line 174:  
# Craft announcement message
 
# Craft announcement message
 
   
 
   
''The message template should be in the repo''
+
RD: ''The message template should be in the repo''
 
   
 
   
 
<ol start="2" style="list-style-type: decimal;">
 
<ol start="2" style="list-style-type: decimal;">
 
<li>Post announcement as a news on dolibarr.org</li></ol>
 
<li>Post announcement as a news on dolibarr.org</li></ol>
 
   
 
   
''Credentials needed''
+
RD: ''Credentials needed''
 
   
 
   
 
<ol start="2" style="list-style-type: decimal;">
 
<ol start="2" style="list-style-type: decimal;">
Line 165: Line 188:  
* [http://www.facebook.com/dolibarr Facebook]
 
* [http://www.facebook.com/dolibarr Facebook]
 
   
 
   
''Credentials needed''
+
RD: ''Credentials needed''
 
   
 
   
''Should all be automated through their respective APIs''
+
RD: ''Should all be automated through their respective APIs''
 
   
 
   
 
<ol start="3" style="list-style-type: decimal;">
 
<ol start="3" style="list-style-type: decimal;">
Line 177: Line 200:  
<li>Send announcement on Forum</li></ol>
 
<li>Send announcement on Forum</li></ol>
 
   
 
   
''This should be a sticky in the appropriate category (which?)''
+
RD: ''This should be a sticky in the appropriate category (which?)''
 
   
 
   
''Credentials needed''
+
RD: ''Credentials needed''
 +
 
 +
<ol start="5" style="list-style-type: decimal;">
 +
<li>Create version on this wiki</li></ol>
 +
 
 +
RD: ''Credentials needed''
 +
 
 +
<ol start="5" style="list-style-type: decimal;">
 +
<li>Create version in [http://doliforge.org Doliforge]</li></ol>
 +
 
 +
RD: ''Credentials needed''
 
   
 
   
 
== Misc. Questions ==
 
== Misc. Questions ==
+
 
 +
===RD===
 
* More projects are moving to tar.xz releases, shan't we join the boat?
 
* More projects are moving to tar.xz releases, shan't we join the boat?
 
* Shouldn't we use native environments to build distribution packages and windows installer? Vagrant maintained virtual build and test machines would be neet.
 
* Shouldn't we use native environments to build distribution packages and windows installer? Vagrant maintained virtual build and test machines would be neet.
 +
LD: More then 80% of users prefer to use installer, and 60% of dowload are for wamp installer, so we must keep native distribution packages.
 
* [https://aur.archlinux.org/packages/dolibarr Arch Linux package] could be adopted and made up to par with other distro's
 
* [https://aur.archlinux.org/packages/dolibarr Arch Linux package] could be adopted and made up to par with other distro's
 
* Shouldn't we publish also on GitHub since it's one of our homes now? This can be fully automated with the [http://developer.github.com/v3/repos/releases/ API]
 
* Shouldn't we publish also on GitHub since it's one of our homes now? This can be fully automated with the [http://developer.github.com/v3/repos/releases/ API]
 
* Is there other announcements to be made?
 
* Is there other announcements to be made?
* Wiki!
  −
* Doliforge (release number)!
  −
  −
''Credentials needed''
  −
   
* Release script is in Perl now, I'd like to rewrite it with [http://www.phing.info Phing]. Any objections ?
 
* Release script is in Perl now, I'd like to rewrite it with [http://www.phing.info Phing]. Any objections ?
+
LD: No, it would be better to have only php tools.
 +
 
 
== Misc. Notes ==
 
== Misc. Notes ==
 
   
 
   
* Directory structure for resulting binaries should be :
+
* Directory structure for resulting binaries should be:
   
<pre>.
 
<pre>.
 
├── generic
 
├── generic
Line 208: Line 238:  
├── package_rpm_opensuse
 
├── package_rpm_opensuse
 
├── package_rpm_redhat-fedora
 
├── package_rpm_redhat-fedora
└── package_windows</pre>
+
└── package_windows
* We need to define the versioning and naming conventions as well as the branching system
+
</pre>
 +
* We need to define the versionning and naming conventions as well as the branching system