Skip to content
This repository has been archived by the owner on Jan 26, 2020. It is now read-only.

RedHat/CentOS 7 support #37

Open
johanek opened this issue Feb 24, 2015 · 7 comments
Open

RedHat/CentOS 7 support #37

johanek opened this issue Feb 24, 2015 · 7 comments

Comments

@johanek
Copy link
Owner

johanek commented Feb 24, 2015

In #34 we found that puppetlabs-apache module class apache::mods::passenger doesn't work because there's no mod_passenger package available. Not much we can do about that, but we should document it.

Trying to install the default version of redmine on EL7 errors:

==> default: Notice: /Stage[main]/Redmine::Rake/Exec[session_store]/returns: Bundler::GemNotFound: Could not find gem 'iconv (~> 1.0.3)
 ruby' in the gems available on this machine.

If you manually solve that you get more errors:

==> default: Notice: /Stage[main]/Redmine::Rake/Exec[rails_migrations]/returns: LoadError: Please install the mysql2 adapter: `gem inst
all activerecord-mysql2-adapter` (mysql2 is not part of the bundle. Add it to Gemfile.)

I tried version 3.0.0 but this failed on nokogiri installation. 2.5.2 works OK. I'm going to raise another issue about bumping the version. But maybe we need to have some information about what versions of redmine are compatible with with OSes?

johanek added a commit that referenced this issue Feb 24, 2015
@UnrealQuester
Copy link
Collaborator

CentOS in particular seems to have weird version problems with everything. The passenger installation instructions recommend installing passenger as a gem and then manually build the apache extension, which needs even more dependencies and more config tweaking. See issue #38 for the discussion about the default redmine version.

@johanek
Copy link
Owner Author

johanek commented Mar 3, 2015

This seems like a problem of rubygem packaging vs system packaging, combined with the changing dependencies between redmine versions.

Here's the versions of passenger installed on the supported platforms:

centos6: mod_passenger-3.0.21-11.el6.x86_64
ubuntu1404: libapache2-mod-passenger-4.0.37-2
ubuntu1204: libapache2-mod-passenger-2.2.11debian-2
debian77: libapache2-mod-passenger-3.0.13debian-1+deb7u2

Which is a bit of a mish mash of versions. The version on Ubuntu 12.04 is particularly old, and as we look at default versions of redmine, it will probably have to run an older version than the other releases. I'm not sure sure how to looking redmine & rails & passenger versions and dependencies to work this out, but redmine 2.6+ didn't work in my testing.

Regarding EL7, it looks like there will be a passenger rpm in EPEL before too long: https://bugzilla.redhat.com/show_bug.cgi?id=1096202

The alternative to using system packages for passenger would be to install the gem and build the apache module on the system. This would probably mean a new puppet module to manage this and all the work that entails. (I already have some code that does this somewhere I can dig out). We already install most of the dependencies to do this, and it would mean we could be more consistent about passenger versions and redmine versions across releases.

Or we can just stick with the system packages, and just try and work around the issues we pick up - i.e. different versions of redmine and try to deal with any bugs like #43 that we encounter.

Thoughts?

@UnrealQuester
Copy link
Collaborator

Last time I checked, installing passenger as a gem was troublesome at best. This also might give problems with systems that already have passenger installed either as a gem, a system package or from source. If we go down this route we should make it an optional module (if no such thing exists already). If EPEL7 gets passenger as a package that would be great, as it would require no additional effort on our side.

@UnrealQuester UnrealQuester added this to the 2.2 milestone Mar 3, 2015
@johanek
Copy link
Owner Author

johanek commented Mar 3, 2015

I'm OK with not getting into managing passenger as a gem, as that's likely to be a can of worms. But I'm interested in why you think installing passenger as a gem is troublesome?

@UnrealQuester
Copy link
Collaborator

I remember doing this a couple of times and it was not great.

  • Install dependencies
  • Install gem
  • Build apache extension
  • Get apache to load the module

Somewhere in this process was also an unavoidable promt if I remember correctly, so we would have to pipe yes to it. Maybe I was doing something wrong, but this is a lot of effort as opposed to apt-get install passenger

@johanek
Copy link
Owner Author

johanek commented Mar 5, 2015

I previously did something like this: https://gist.github.com/johanek/14f974eddc1c8a6c2d66

But I'm sure that converting that to something that works for multiple rubies and platforms would be a PITA

@UnrealQuester UnrealQuester removed this from the 2.2 milestone Mar 14, 2015
@UnrealQuester
Copy link
Collaborator

The two issues raised here (passenger and redmine version) will likely not be solved for 2.2. Seems like we have to wait for Passenger in EPEL7 and #38. As #38 is scheduled for 3.0, I have removed this issue from 2.2.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants