Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-11729

Cannot install Jenkins on a fresh copy of Solaris 11

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Won't Fix
    • Icon: Major Major
    • core
    • Solaris 11 on Intel-based 64-bit hardware

      I did a fresh install of the new Solaris 11 operating system that was released about a week ago on one of our Intel-based test servers. I followed the instructions on the wiki (https://wiki.jenkins-ci.org/display/JENKINS/Installing+Jenkins+on+OpenSolaris), but could not install Jenkins:

      root@7iv05-server-1:~# pkg install jenkins
      Creating Plan /                
      pkg install: The requested change to the system attempts to install multiple actions
      for dir 'var/lib' with conflicting attributes:
      
          1 package delivers 'dir group=sys mode=0755 owner=root path=var/lib':
              pkg://jenkins/jenkins@1.439,0-0:20111114T201035Z
          7 packages deliver 'dir group=other mode=0755 owner=root path=var/lib', including:
              pkg://solaris/developer/documentation-tool/openjade@1.3.2,5.11-0.175.0.0.0.0.0:20110927T084522Z
              pkg://solaris/developer/documentation-tool/opensp@1.5.1,5.11-0.175.0.0.0.0.0:20110927T084603Z
              pkg://solaris/file/slocate@3.1,5.11-0.175.0.0.0.0.0:20110927T085608Z
              pkg://solaris/service/postrun@1.0,5.11-0.175.0.0.0.0.0:20110927T113723Z
              pkg://solaris/system/display-manager/gdm@2.30.7,5.11-0.175.0.0.0.0.0:20110927T114132Z
      
      These packages may not be installed together.  Any non-conflicting set may
      be, or the packages must be corrected before they can be installed.
      
      root@7iv05-server-1:~#
      

      The same procedure works flawlessly using Solaris 11 Express (released a year ago), btw.

      As you can see in the console error messages, there's obviously a permission change between the former Express edition and the final release (sys vs. other) for the directory /var/lib/jenkins that is used by default as the Jenkins home directory in the service manifest.

      To prevent such incompatibilities, I suggest to change that directory from /var/lib/jenkins to simply /var/jenkins, both in the IPS manifest file and in the jenkins.xml that gets installed:

      --- jenkins.xml.orig    2011-11-15 10:46:53.537061735 +0100
      +++ jenkins.xml 2011-11-15 11:34:18.591652044 +0100
      @@ -40,7 +40,7 @@
                              <method_credential user='root' group='root' />
                              <method_environment>
                                      <envvar name='PATH' value='/usr/bin:/usr/sbin:/usr/ccs/bin:/usr/local/bin:/usr/local/sbin:/usr/sfw/bin' />
      -                               <envvar name='JENKINS_HOME' value='/var/lib/jenkins' />
      +                               <envvar name='JENKINS_HOME' value='/var/jenkins' />
                              </method_environment>
                      </method_context>
      

      IMHO this is consistent with other applications such as Apache 2 or IBM DB2 that both have their own installation directory under /var.

            kohsuke Kohsuke Kawaguchi
            t_heit Thorsten Heit
            Votes:
            1 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: