-
Notifications
You must be signed in to change notification settings - Fork 11
Cassandane "light" #60
Comments
Specifically, it would be great if the tests wouldn't require Mail/JMAPTalk.pm for systems that don't use JMAP. All the tests seem to depend on it:
|
Thanks for this, I'll review your configuration and try to accommodate it as part of PR #57. :) |
Not 100% about this -- holler if it causes problems, or just revert! This is mainly for issue #60
Ok, #57 has been merged and I've also updated Cassandane master further to disable the CalDAV, CardDAV, and NNTP tests if those features aren't enabled. I've tested it based on the following configure call, which is based on yours but with tweaks for my build environment:
I'd be interested to hear how it goes! |
I just updated my copy of Cassandane, but the problem remains:
I think the |
This seems to work:
|
FWIW, I still had to move these modules aside, because they would cause compilation errors that kept testrunner from working at all: CaldavAlarm.pm |
Now testrunner runs, but it just fails without creating reports. I tried to set up cassandane.ini properly, but maybe I overlooked something?
|
Okay, a few notes:
Thanks for the tip/patch about |
Here's the output of
|
testrunner also failed to run before I moved the modules:
|
Thanks, you were right! I didn't realize I had to set up the rootdir manually. Now I get different errors, but I'll try to figure things out on my own for now. |
OK, there are multiple issues with the way Red Hat installs Cyrus and the way Cassandane expects them to be installed.
I added
More later ... |
Now the test is actually running, but it fails for reasons I don't understand ... the problem seems to be that the client tries to SELECT the already selected folder?!
|
How do I tell Cassandane to enable xapian for the tests?
|
I just wanted to add that Red Hat's cyrus-imapd is 2.4.17; when I brought Fedora up to 3.0 I relocated things out of /usr/lib/cyrus-imapd (to either /usr/bin or /usr/libexec/cyrus-imapd as appropriate) because the configure options which the old packages were using to specify the rather odd directory layout no longer exist. But this did involve renaming some commands (like quota) which is probably why the old packages didn't just put the human-executable commands in /usr/bin in the first place. One thing that isn't renamed, however, is master. I never understood why they renamed it in the first place. I'd considered putting in a symlink just in case, but decided it wasn't worth it. So that's why the Fedora packages don't run into this problem. |
Cassandane thinks your Cyrus install was compiled without Xapian. It determines this by looking at the output from the Can you run cyr_buildinfo by hand and paste the output here? I'm not sure what's going on with that ACL.delete test, but I would probably ignore the specific details of it until we know Cassandane itself is working correctly. If you do a full run of just |
Also, I have thought some more about the perl module dependencies and I think we probably need to leave them as they are. Our automated testing stuff relies on All of the perl modules we depend on are in CPAN, and with the exception of the DAV and JMAP ones, I believe most are usually packaged by distro's too. So it might just be easiest to install the modules you don't have? There's a list of (debian) package names here: https://www.cyrusimap.org/dev/imap/developer/developer-testing.html |
I just remembered your cyr_buildinfo output is in the first post, hah. Okay, I bet Cassandane can't find it for some reason, then (and therefore every value is logically "false"). But I thought it logged a warning when it couldn't find it... |
Oh I see, it's now hardcoded to look in sbin for it (since I ripped it out of the Instance module, it can no longer just use I've just pushed a commit which will report when it can't find cyr_buildinfo, can you compare what it expects with where cyr_buildinfo actually lives please? Thanks |
Thanks! With that commit testrunner complains as expected:
For my purposes I find it easier to move aside the tests that cause problems than to install the required Perl modules manually. I'm running the full testrunner now and will report the results. |
Here is the output:
|
That is a weird blend of successes and fails, very curious, and I'm not seeing any particularly obvious pattern to it either. :( Could do another full run, this time with -fpretty and -vvv, and capture the whole output? Not sure if you'll be able to attach that much output here, but if not you can email it to me directly, and I'll have a skim through and see if anything becomes apparent |
Thanks for sending that through. I'm noticing a bunch of the tests are timing out waiting out for lmtpd to start. I also notice you seem to be running cassandane as root. I wonder if things are failing to start because they have too much privilege, and then the tests fall apart in various ways depending on what they needed? testrunner.pl should be dropping privileges to run as the cyrus user (using I run testrunner.pl just as user account, and my user account has the following entry in the sudoers file:
I also have the following my passwd and group file:
(ie, the cyrus user has no login shell and is a member of the cyrus and mail groups, and my own user is also a member of the cyrus group) So, when testrunner runs here, it uses the sudo codepath in How's your perl? At this point I would be lacing the |
I set up sudo the way you did and ran the script as myself, but that didn't change anything. Here's what's in my passwd and group files:
Adding my account to the same group as cyrus didn't change anything. I'll look into debugging output next week. At first glance it should already be there if |
I would like to get Cassandane to work on my system. Currently it fails because it depends on features that are disabled here:
$ ./configure --build=x86_64-redhat-linux-gnu --host=x86_64-redhat-linux-gnu --program-prefix= --disable-dependency-tracking --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --sysconfdir=/etc --datadir=/usr/share --includedir=/usr/include --libdir=/usr/lib64 --libexecdir=/usr/libexec --localstatedir=/var --sharedstatedir=/var/lib --mandir=/usr/share/man --infodir=/usr/share/info --libexecdir=/usr/lib/cyrus-imapd --sbindir=/usr/lib/cyrus-imapd --enable-xapian --enable-backup --enable-idled --enable-murder --enable-replication --with-extraident=1.el7 Fedora --with-ldap=/usr --with-perl=/usr/bin/perl --without-snmp --with-syslogfacility=LOCAL6
This results in:
The text was updated successfully, but these errors were encountered: