[FFe] Upload new Zentyal packages (was Precise will ship totally broken ebox packages)

Bug #928501 reported by Jorge Salamero Sanz
60
This bug affects 8 people
Affects Status Importance Assigned to Milestone
ebox (Ubuntu)
Fix Released
High
James Page

Bug Description

Rationale for FFe:

Zentyal is an open source small business server that provides a graphical configuration interface for many Ubuntu services (squid, dansguardian, firewall, qos, openvpn, dhcp, dns, samba, cups, etc.) and integration between them.

These packages are a *rename* of the existing ebox packages along with a *new upstream release* fixing known issues in current ebox packages on precise.

Package builds: Yes (see https://launchpad.net/~jacalvo/+archive/zentyal-precise/)
Package installs: Yes, upgrade from current ebox packages has been successfully tested.
Reviewers: myself and jacalvo (from zentyal team), james-page, huats and client-fewbar (from ubuntu).
All packages have been reviewed by multiple devs, are lintian clean, install and upgrade, all feedback on this bug reports has been addressed.

James willing to sponsor the upload once FFe is approved an Archive admin confirms:

a) use of native package format - this still seems to be making some dev's uncomfortable
b) this is basically a rename of the old ebox packages

Original Bug Report:

Current ebox-* packages are based on the 2.0 version, which is more than one year old and doesn't work on oneiric and later because slapd changes.

New zentyal-* packages are intended to replace existing ebox-* ones in Universe (eBox Platform was renamed to Zentyal time ago).

We wouldn't like to see how Precise is shipped with broken Zentyal packages when we have made the effort to prepare new ones, see: https://lists.ubuntu.com/archives/ubuntu-server/2012-January/006062.html

Please, sponsor the upload of the new Zentyal packages available on https://launchpad.net/~jacalvo/+archive/zentyal-precise/ and delete ebox-* ones.

Changed in ebox (Ubuntu):
status: New → Confirmed
Revision history for this message
Clint Byrum (clint-fewbar) wrote :

Jorge, this is a *massive* amount of review work. I hope you'll be patient with us as we get through each item.

Is there any reason zentyal is broken up into so many source packages?

Revision history for this message
Clint Byrum (clint-fewbar) wrote :

For zentyal-common:

You have a Replaces: libebox (<< 2.0.100), which is good. However, I suspect you'd like for libebox to be removed upon upgrade. If so, then you will want to also have

Breaks: libebox (<< 2.0.100).

This will signal to apt that it should just remove libebox before installing and configuring zentyal-common.

The same problem exists for zentyal-core .. suggest adding a Breaks: for ebox.

---

On initial review, a few items stick out on the majority of the packages.

Vcs-Browser needs to point at the individual url where the debian/ dir is maintained. This isn't possible with Vcs-Git, since git has no way to reference remote sub-dirs, but at least the browser should help the user find the package's root.

So for zentyal-common it should be

Vcs-Browser: http://git.zentyal.org/zentyal.git/tree/HEAD:/main/common

Also lintian has a warning about the age of standars:

W: zentyal-common source: ancient-standards-version 3.8.2 (current is 3.9.2)
W: zentyal-core source: ancient-standards-version 3.8.2 (current is 3.9.2)
W: zentyal-dhcp source: ancient-standards-version 3.8.2 (current is 3.9.2)
W: zentyal-dns source: ancient-standards-version 3.8.2 (current is 3.9.2)
W: zentyal-firewall source: ancient-standards-version 3.8.2 (current is 3.9.2)

It would be good for you to review the debian policy manual changes and see if you are still in compliance. You can find it on your Ubuntu system at:

/usr/share/doc/debian-policy/upgrading-checklist.txt.gz

Just look for version 3.8.2, and move up to 3.9.2 to see if you need to make any changes.

Revision history for this message
Micah Gersten (micahg) wrote :

While having a reference to the upstream packaging branch is nice, Vcs-Browser is meant to point to the distro packaging branch. Also, unless the Debian dir content is the same except for a few name substitutions or packaging upgrades, these packages should really have 2 people reviewing them before as they are new sources.

Revision history for this message
Clint Byrum (clint-fewbar) wrote :

Micah, good point, perhaps its better to make those X- fields. Though I do believe the Zentyal team intendes to maintain the distro packages themselves eventually, even then I think we'd want the packages maintained in launchpad bzr so that other ubuntu developers can collaborate on them.

And they'll get a second person reviewing them on NEW review, right? Thats actually a big concern.. these are so massive, they will likely take many days to review.

Revision history for this message
Micah Gersten (micahg) wrote :

Unless the archive admin accepting them is in the mood to do the full packaging review, they might be rejected without a second review documented. Given the situation with the current packages, my guess is that this would warrant a feature freeze exception, but IANA release team member.
As for the Vcs fields, XS-Zentyal-Vcs-* field seem reasonable IMHO.

Revision history for this message
Jorge Salamero Sanz (bencer) wrote :

IMHO we have to consider some variables in this situation:

* current ebox packages are broken and in an unusable state, proposed zentyal packages at least work
* feature freeze is in 8 days and uploading new packages after that will be more complicated
* Zentyal project is Ubuntu specific, would be really really sad that precise is shipped with broken or no zentyal packages

given this, my proposal is to upload these new zentyal packages, which far from perfect, improve the current situation, after this, we still have 6 weeks to improve these details, make them lintian clean and further review.

Revision history for this message
José A. Calvo (jacalvo) wrote :

No need to say I agree with all points exposed by Jorge.

I've published new -1 versions of all the packages with the changes suggested by Clint (thanks!).

Changes are: added the Breaks fields, the Vcs-Browser modification and update the Standard-versions after checking the policy compliance.

I've also installed the old broken ebox-* packages (and get scared about the amount of errors just during the installation) and tried to "upgrade" to the zentyal-* ones in my PPA and everything went flawlessly and without noticeable errors.

Please let us know if we can do anything else to speedup this. We are doing this effort because we want avoid the release of precise with those broken packages (which I think it would give a bad image of both Zentyal and Ubuntu).

Revision history for this message
Jorge Salamero Sanz (bencer) wrote :

Hi Clint and Micah,

what do you think about the approach I suggested? Sorry for pushing, but we have only a few days to go.

Thanks!

Revision history for this message
Robbie Williamson (robbiew) wrote :

Jorge,
We can request a Feature Freeze Exception if need be, and for packages in universe...it's a much less intense process.

Revision history for this message
Stefano Rivera (stefanor) wrote :

A leaf package (or set of leaf packages) can easily get an FFe. But for NEW packages we also need an archive admin to volunteer to review them before we'll grant the FFe. The archive admins only guarantee NEW review before FF.

Revision history for this message
Jorge Salamero Sanz (bencer) wrote :

Hi all,

In addition to the fixes we already did regarding the things you raised, we have also make sure these new packages are 100% lintian clean.

We would really appreciate if anybody could have a look at them, again in the same place: https://launchpad.net/~jacalvo/+archive/zentyal-precise/.

Regards,

Revision history for this message
Clint Byrum (clint-fewbar) wrote :

Hi everybody! Just an update on the status of this.

I've been talking with Christophe (huats) and he has agreed to help shoulder the load on the review. I'll take a second look once he has gone over things.

We cannot gloss over the NEW process, as it is in place to prevent us from redistributing code without licensing, and from distributing malicious or obviously broken code. Thats not to say that we read every line, but we do need to verify that proper documentation of licensing is in place, and that the code is in fact the code you intend us to package. Imagine what might happen if we accepted NEW uploads without looking over them, how easy it would be to write a trojan for Ubuntu users?

That said, since this is a NEW package that is really a rename of an old one, I suspect whoever does the NEW review will be able to consider that fact, so it should not be a painful process.

For the future, I would suggest that some Zentyal developers apply for Per-Package-Upload rights to maintain Zentyal in Ubuntu. Its clear that you all understand packaging, and this will allow you to keep the packages in good shape for every Ubuntu release.

Revision history for this message
José A. Calvo (jacalvo) wrote :

Hi Clint,

Thanks for the reply. We understand the nature of the process and we appreaciate your suggestion. Applying for Per-Package-Upload rights seems the perfect solution, and we'll do it for sure.

Anyway, I suppose this is for the future, and we will still need your help to upload the current packages.

Please keep us updated specially if you need us to change something or to help in some other way.

Revision history for this message
Jorge Salamero Sanz (bencer) wrote :

Good idea Client, I've already filled in https://wiki.ubuntu.com/JorgeSalamero/PerPackageDeveloperApplication so as soon as they go thru the NEW queue we can upload further versions. Thanks for your collaboration!

tags: added: rls-p-tracking
Revision history for this message
Jorge Salamero Sanz (bencer) wrote :
Download full text (3.2 KiB)

These are the comments from Christophe (huats), we are already working on them:

==== zbuildtools
 - The upstream source missed the COPYING file
 - licensing is not OK: the GPL file pointed is /usr/share/common-licenses/GPL (which is v3) while it should be v2 (according to the licence in the sources)

==== zentyal-ca
 - licensing is not OK: the GPL file pointed is /usr/share/common-licenses/GPL (which is v3) while it should be v2 (according to the licence in the sources)

==== zentyal-common
 - licensing is not OK: the GPL file pointed is /usr/share/common-licenses/GPL (which is v3) while it should be v2 (according to the licence in the sources)

==== zentyal-core
 - The are lots of misssing copyrights :
    - most of the www/js/ ones
    - src/EBox/ThirdParty/Apache2/AuthCookie.pm
    - src/EBox/ThirdParty/Apache2/AuthCookie/Util.pm
 - what are the copyright one the various images in www/images ?
 - the authors for src/EBox/ThirdParty/Apache2/AuthCookie (in debian/copyright) seems incorrect
 - licensing is not OK: the GPL file pointed is /usr/share/common-licenses/GPL (which is v3) while it should be v2 (according to the licence in the sources)

==== zentyal-dhcp
  - licensing is not OK: the GPL file pointed is /usr/share/common-licenses/GPL (which is v3) while it should be v2 (according to the licence in the sources)

==== zentyal-dns
- licensing is not OK: the GPL file pointed is /usr/share/common-licenses/GPL (which is v3) while it should be v2 (according to the licence in the sources)

==== zentyal-firewall
- licensing is not OK: the GPL file pointed is /usr/share/common-licenses/GPL (which is v3) while it should be v2 (according to the licence in the sources)

==== zentyal-network
- licensing is not OK: the GPL file pointed is /usr/share/common-licenses/GPL (which is v3) while it should be v2 (according to the licence in the sources)

==== zentyal-ntp
- licensing is not OK: the GPL file pointed is /usr/share/common-licenses/GPL (which is v3) while it should be v2 (according to the licence in the sources)

==== zentyal-objects
- licensing is not OK: the GPL file pointed is /usr/share/common-licenses/GPL (which is v3) while it should be v2 (according to the licence in the sources)

==== zentyal-openvpn
- licensing is not OK: the GPL file pointed is /usr/share/common-licenses/GPL (which is v3) while it should be v2 (according to the licence in the sources)

==== zentyal-printers
- licensing is not OK: the GPL file pointed is /usr/share/common-licenses/GPL (which is v3) while it should be v2 (according to the licence in the sources)

==== zentyal-samba
- licensing is not OK: the GPL file pointed is /usr/share/common-licenses/GPL (which is v3) while it should be v2 (according to the licence in the sources)

==== zentyal-services
- licensing is not OK: the GPL file pointed is /usr/share/common-licenses/GPL (which is v3) while it should be v2 (according to the licence in the sources)

==== zentyal-squid
- licensing is not OK: the GPL file pointed is /usr/share/common-licenses/GPL (which is v3) while it should be v2 (according to the licence in the sources)

==== zentyal-users
- licensing is not OK: the GPL file pointed is /usr/share/common-l...

Read more...

Revision history for this message
James Page (james-page) wrote :

bzr branches for all of the packages in PPA can be found here: https://code.launchpad.net/zentyal

Thanks Daviey!

Revision history for this message
James Page (james-page) wrote :

zbuildtools:

Source package throws the following lintian warnings:

W: zbuildtools source: package-uses-deprecated-debhelper-compat-version 4
E: zbuildtools source: package-uses-debhelper-but-lacks-build-depends
W: zbuildtools source: ancient-standards-version 3.7.3 (current is 3.9.3)

I would suggest upgrading to a compat lever of 7 and adding a versioned Build-Depends: debhelper (>= 7).

Please check the package against the upgrade checklist and bump to the latest version (3.9.3):

/usr/share/doc/debian-policy/upgrading-checklist.txt.gz

Looks like huats has done a great job on reviewing copyright in each package so nothing specific to add.

Revision history for this message
James Page (james-page) wrote :

General comments:

It would be nice if all debian/copyright files conformed to:

http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/

but that is optional.

All packages are defaulting to source format 1.0; its a minor change to upgrade each to soure format 3.0 (native) and it makes it clear that this is a native package:

http://wiki.debian.org/Projects/DebSrc3.0

Revision history for this message
James Page (james-page) wrote :

zbuildtools:

This package lacks Homepage and Vcs-* fields in debian/control

Revision history for this message
James Page (james-page) wrote :

zentyal-ca: no specific comments about this package; builds OK and lintian clean.

zentyal-dhcp: no specific comments about this package; builds OK and lintian clean.

Revision history for this message
James Page (james-page) wrote :

zentyal-dns: no specific comments about this package; builds OK and lintian clean.

Revision history for this message
James Page (james-page) wrote :

General feedback:

Quite a few packages have upstart configurations prefixed with ebox:

./zentyal-users/debian/ebox.slapd.upstart
./zentyal-users/debian/ebox.ad-pwdsync.upstart
./zentyal-users/debian/ebox.slapd-frontend.upstart
./zentyal-users/debian/ebox.slapd-replica.upstart
./zentyal-users/debian/ebox.slapd-translucent.upstart
./zentyal-core/debian/ebox.redis.upstart
./zentyal-core/debian/ebox.event-daemon.upstart
./zentyal-core/debian/ebox.loggerd.upstart
./zentyal-ntp/debian/ebox.ntpd.upstart
./zentyal-dns/debian/ebox.bind9.upstart
./zentyal-squid/debian/ebox.dansguardian.upstart

Not sure whether these should be renamed or not - guess that depends on how zentyal actually uses them.

I don't think this is a blocker - it was just a little confusing.

Revision history for this message
James Page (james-page) wrote :

zentyal-network: no specific comments about this package; builds OK and lintian clean.

Revision history for this message
James Page (james-page) wrote :

zentyal-firewall: no specific comments about this package; builds OK and lintian clean.

Changed in ebox (Ubuntu):
importance: Undecided → High
Revision history for this message
Micah Gersten (micahg) wrote :

None of these packages should be native. Native packages are distribution specific with no upstream tarball or VCS.

Revision history for this message
Clint Byrum (clint-fewbar) wrote :

Micah, Zentyal is Ubuntu specific.. so it makes sense as a native package.

Revision history for this message
Micah Gersten (micahg) wrote :

Not really, they are an upstream developing for Ubuntu, not something specific to Ubuntu.

Revision history for this message
Jorge Salamero Sanz (bencer) wrote :

Hi Micah,

Zentyal is Ubuntu specific, we not only we develop for Ubuntu, but we depend on specific Ubuntu components like upstart, the versions of the packages in the Ubuntu archive, etc.

Eventually Zentyal could be ported to different distros but this would be a new feature that will require changes not only in the packaging but also in the source code; because of that we still think (as upstream) that we are Ubuntu specific.

James,

about these ebox- prefixed upstart jobs, are for Zentyal own daemons, like the log parser or the AD synchronization, or for services we like to start using upstart.

Revision history for this message
Micah Gersten (micahg) wrote :

I assume you release upstream tarballs? In that case, 3.0 (quilt) is more appropriate for the distro packaging. You can use whatever you want for upstream packaging.

Revision history for this message
José A. Calvo (jacalvo) wrote :

I've uploaded new versions of all the packages fixing the problems reported by Cristophe and James. Please let us know if we have to do anything else. Thanks!

Revision history for this message
Stéphane Graber (stgraber) wrote :

I'm unsubscribing the sponsor team for now as reading through the backlog it's not clear there's something ready for sponsorship just yet.
I also think this should be reviewed by the release team and a FFe granted before considering an upload.

Please subscribe sponsors again once the packages are ready for upload and the Feature Freeze exception has been granted by the release team.

Revision history for this message
James Page (james-page) wrote :

Some further conversation about native/non-native packaging on #ubuntu-devel:

http://irclogs.ubuntu.com/2012/03/12/%23ubuntu-devel.txt

16:39 onwards....

Revision history for this message
Clint Byrum (clint-fewbar) wrote :

Stephane, I'm not sure I agree with dropping this from the sponsorship queue. What is the sponsorship queue for except reviewing items that users feel are ready for upload?

Its certainly very *large* as a sponsorship item, but its a very important contribution and should be reviewed in chunks by everyone who can spend time taking a look at it.

Revision history for this message
James Page (james-page) wrote :

I took a run through the revised packages this morning:

zbuildtools: OK
zentyal-ca: OK
zentyal-common: OK
zentyal-core: OK
zentyal-dhcp: OK
zentyal-dns: OK
zentyal-firewall: OK
zentyal-network: OK
zentyal-ntp: OK
zentyal-objects: OK
zentyal-openvpn: OK
zentyal-printers: OK
zentyal-samba: OK
zentyal-services: OK
zentyal-squid: OK
zentyal-users: OK

Checks:

source/format and changelog switches for native format.
licensing updates based on feedback from huats.
other feedback on this bug report has been addressed.
lintian pass on source and binary packages - only warnings and information.
tested package upgrade from ebox to zentyal packages: worked OK.

I'm generally pretty comfortable with these packages and would be happy to upload pending confirmation of:

1) FFe approval from release team
2) Archive Admin confirmation of:
    a) use of native package format - this still seems to be making some dev's uncomfortable.
    b) this is basically a rename of the old ebox packages as that is the basis upon which I have reviewed :-)

If the native package format is an issue then we should switch to 3.0 (quilt) as part of the upload and this should be done by sponsoring dev's, not upstream (who have done all of the packaging work to-date).

description: updated
summary: - Precise will ship totally broken ebox packages
+ [FFe] Upload new Zentyal packages (was Precise will ship totally broken
+ ebox packages)
Changed in ebox (Ubuntu):
status: Confirmed → New
James Page (james-page)
description: updated
Revision history for this message
Stefano Rivera (stefanor) wrote :

The FFe part of this is a no-brainer, I think. But it'll need archive-admin volunteers.

Revision history for this message
Stefano Rivera (stefanor) wrote :

Riddell volunteered to do the NEW review. FFe granted. Please do this before beta 2 freeze.

Changed in ebox (Ubuntu):
status: New → Triaged
Revision history for this message
James Page (james-page) wrote :

Jorge

Thanks for all of you effort working in the feedback to-date.

As was pointed out to me in #ubuntu-release this afternoon as the zentyal packages are really a rename of the existing ebox packages they really need to have transitional packages so people using the ebox packages get upgraded to zentyal equivs.

More details: http://wiki.debian.org/Renaming_a_Package (Method 2).

I think that this should be worked into each package before we upload otherwise ebox users won't automatically get upgraded.

Revision history for this message
José A. Calvo (jacalvo) wrote :

Hi all,

I've uploaded new packages with the changes made by Jorge regarding the transition from ebox to zentyal.

Let us know if we can do anything else. Thanks again for your collaboration!

Revision history for this message
James Page (james-page) wrote :

Jorge is currently working on fixing the final issue relating to the addition of transitional packages for e-box->zentyal migration.

Once that is complete I will review and upload if OK.

I'm going to un-subscribe Ubuntu Sponsors as I have this in hand.

Changed in ebox (Ubuntu):
assignee: nobody → James Page (james-page)
status: Triaged → In Progress
Revision history for this message
Jorge Salamero Sanz (bencer) wrote :

Hi James,

you can find here all the final fixes:

https://launchpad.net/~bencer/+archive/zentyal-2.3-p

Revision history for this message
James Page (james-page) wrote :

All source packages have now been accepted into 12.04.

Marking 'Fix Released' - binary packages should trickle through over the next day or so.

Changed in ebox (Ubuntu):
status: In Progress → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.