[Gluster-devel] [smoke failure] Permission denied error while install-pygluypPYTHON

Niels de Vos ndevos at redhat.com
Tue May 17 08:18:30 UTC 2016


On Tue, May 17, 2016 at 02:56:15AM -0400, Karthik Subrahmanya wrote:
> Got the same issue while backporting to 3.8 branch. Can some one please have a look?
> https://build.gluster.org/job/smoke/27834/console

http://review.gluster.org/14337 has been posted but still needs some
reviewing.

Niels

> 
> Regards,
> Karthik
> 
> ----- Original Message -----
> > From: "Aravinda" <avishwan at redhat.com>
> > To: "Kaushal M" <kshlmster at gmail.com>
> > Cc: "Gluster Devel" <gluster-devel at gluster.org>
> > Sent: Friday, May 13, 2016 11:50:34 AM
> > Subject: Re: [Gluster-devel] [smoke failure] Permission denied error while install-pygluypPYTHON
> > 
> > Refreshed the patch to fix glupy, systemd and mount.glusterfs files.
> > http://review.gluster.org/14315
> > regards
> > Aravinda
> > On 05/13/2016 10:25 AM, Kaushal M wrote:
> > 
> > 
> > 
> > On Fri, May 13, 2016 at 9:59 AM, Aravinda <avishwan at redhat.com> wrote:
> > 
> > 
> > 
> > Sent patch to fix glupy installation issue.
> > http://review.gluster.org/#/c/14315/ regards
> > Aravinda
> > 
> > On 05/12/2016 11:28 PM, Aravinda wrote:
> > 
> > Sorry miss from my side. Updated list of files/dir which do not honour
> > --prefix
> > 
> > usr/lib/
> > usr/lib/systemd
> > usr/lib/systemd/system
> > usr/lib/systemd/system/glusterd.service
> > usr/lib/python2.7
> > usr/lib/python2.7/site-packages
> > usr/lib/python2.7/site-packages/gluster
> > usr/lib/python2.7/site-packages/gluster/__init__.pyo
> > usr/lib/python2.7/site-packages/gluster/__init__.pyc
> > usr/lib/python2.7/site-packages/gluster/__init__.py
> > usr/lib/python2.7/site-packages/gluster/glupy
> > usr/lib/python2.7/site-packages/gluster/glupy/__init__.pyo
> > usr/lib/python2.7/site-packages/gluster/glupy/__init__.pyc
> > usr/lib/python2.7/site-packages/gluster/glupy/__init__.py
> > sbin/
> > sbin/mount.glusterfs
> > Thanks for identifying the list of paths. We need to fix all of this.
> > I've opened a bug [1] so that this can be correctly tracked and fixed.
> > 
> > [1] https://bugzilla.redhat.com/show_bug.cgi?id=1335717
> > 
> > 
> > 
> > Things I did to find above list.
> > ./autogen.sh
> > ./configure --prefix=/usr/local
> > DESTDIR=/tmp/glusterfs make install
> > 
> > Then listed all the files which are in /tmp/glusterfs except
> > /tmp/glusterfs/usr/local
> > 
> > regards
> > Aravinda
> > 
> > On 05/12/2016 08:56 PM, Aravinda wrote:
> > 
> > 
> > regards
> > Aravinda
> > 
> > On 05/12/2016 08:23 PM, Niels de Vos wrote:
> > 
> > On Thu, May 12, 2016 at 04:28:40PM +0530, Aravinda wrote:
> > 
> > regards
> > Aravinda
> > 
> > On 05/12/2016 04:08 PM, Kaushal M wrote:
> > 
> > The install path should be `$DESTDIR/$PREFIX/<path>`.
> > 
> > PREFIX should be the path under which the file is going to be installed.
> > 
> > Yes. That is substituted during ./configure if --prefix is passed, otherwise
> > generated Makefile will have $prefix variable. I think glupy need to
> > installed on /usr/lib/python2.6/site-packages/  to import python packages
> > globally while testing. Same rule is used to deploy systemd unit files.
> > (Prefix is not used)
> > 
> > I'm not convinced about this yet. If someone decides to use --prefix, I
> > think we should honour that everywhere. If that is not common, we can
> > introduce an additional ./configure option for the uncommon use-cases
> > like the Python site-packages.
> > 
> > Do you have a reference where the --prefix option explains that some
> > contents may not use it?
> > 
> > Following files/dirs are not honoring prefix, I am not sure about the exact
> > reason(for example, /var/log or /var/lib/glusterd)
> > 
> > sbin
> > sbin/mount.glusterfs
> > usr/lib/
> > usr/lib/systemd
> > usr/lib/systemd/system
> > usr/lib/systemd/system/glustereventsd.service
> > usr/lib/systemd/system/glusterd.service
> > usr/lib/python2.7
> > usr/lib/python2.7/site-packages
> > usr/lib/python2.7/site-packages/gluster
> > usr/lib/python2.7/site-packages/gluster/__init__.pyo
> > usr/lib/python2.7/site-packages/gluster/__init__.pyc
> > usr/lib/python2.7/site-packages/gluster/__init__.py
> > usr/lib/python2.7/site-packages/gluster/glupy
> > usr/lib/python2.7/site-packages/gluster/glupy/__init__.pyo
> > usr/lib/python2.7/site-packages/gluster/glupy/__init__.pyc
> > usr/lib/python2.7/site-packages/gluster/glupy/__init__.py
> > var/
> > var/lib
> > var/lib/glusterd
> > var/lib/glusterd/glusterfind
> > var/lib/glusterd/glusterfind/.keys
> > var/lib/glusterd/groups
> > var/lib/glusterd/groups/virt
> > var/lib/glusterd/hooks
> > var/lib/glusterd/hooks/1
> > var/lib/glusterd/hooks/1/delete
> > var/lib/glusterd/hooks/1/delete/post
> > var/lib/glusterd/hooks/1/delete/post/S57glusterfind-delete-post.py
> > var/lib/glusterd/hooks/1/gsync-create
> > var/lib/glusterd/hooks/1/gsync-create/post
> > var/lib/glusterd/hooks/1/gsync-create/post/S56glusterd-geo-rep-create-post.sh
> > var/lib/glusterd/hooks/1/reset
> > var/lib/glusterd/hooks/1/reset/post
> > var/lib/glusterd/hooks/1/reset/post/S31ganesha-reset.sh
> > var/lib/glusterd/hooks/1/stop
> > var/lib/glusterd/hooks/1/stop/pre
> > var/lib/glusterd/hooks/1/stop/pre/S30samba-stop.sh
> > var/lib/glusterd/hooks/1/stop/pre/S29CTDB-teardown.sh
> > var/lib/glusterd/hooks/1/start
> > var/lib/glusterd/hooks/1/start/post
> > var/lib/glusterd/hooks/1/start/post/S31ganesha-start.sh
> > var/lib/glusterd/hooks/1/start/post/S30samba-start.sh
> > var/lib/glusterd/hooks/1/start/post/S29CTDBsetup.sh
> > var/lib/glusterd/hooks/1/set
> > var/lib/glusterd/hooks/1/set/post
> > var/lib/glusterd/hooks/1/set/post/S32gluster_enable_shared_storage.sh
> > var/lib/glusterd/hooks/1/set/post/S30samba-set.sh
> > var/lib/glusterd/hooks/1/add-brick
> > var/lib/glusterd/hooks/1/add-brick/pre
> > var/lib/glusterd/hooks/1/add-brick/pre/S28Quota-enable-root-xattr-heal.sh
> > var/lib/glusterd/hooks/1/add-brick/post
> > var/lib/glusterd/hooks/1/add-brick/post/disabled-quota-root-xattr-heal.sh
> > var/log
> > var/log/glusterfs
> > var/run
> > var/run/gluster
> > 
> > Thanks,
> > Niels
> > 
> > 
> > DESTDIR is a way to make it easier to package builders to collect
> > installed files.
> > It shouldn't be used as an alternative to prefix. And I think software
> > generally shouldn't be run from DESTDIR.
> > 
> > More information is available at
> > https://www.gnu.org/software/automake/manual/html_node/DESTDIR.html On Thu,
> > May 12, 2016 at 3:55 PM, Aravinda <avishwan at redhat.com> wrote:
> > 
> > regards
> > Aravinda
> > 
> > On 05/12/2016 02:33 PM, Niels de Vos wrote:
> > 
> > On Thu, May 12, 2016 at 02:01:43PM +0530, Aravinda wrote:
> > 
> > I checked the Makefile.am and configure.ac of glupy, looks good to me. I
> > don't think we have issue in glupy.
> > 
> > If we run make install with DESTDIR empty then
> > `${DESTDIR}/usr/lib/python2.6/site-packages/gluster` will become
> > /usr/lib/python2.6/site-packages/gluster. So we will get that error.
> > 
> > For example,
> >      DESTDIR= make install
> >      or
> >      make install DESTDIR=
> > 
> > Can we check how we are executing smoke test?
> > 
> > I think it is this script, no DESTDIR in there:
> > https://github.com/gluster/glusterfs-patch-acceptance-tests/blob/master/build.sh
> > My guess is that the --prefix ./configure option is not honoured?
> > 
> > DESTDIR will not get substitute during ./configure, it is used during make
> > install. Once we run ./autogen.sh and ./configure(with whatever prefix),
> > generated Makefile for glupy is
> > 
> > 
> > install-pyglupyPYTHON: $(pyglupy_PYTHON)
> >      @$(NORMAL_INSTALL)
> >      @list='$(pyglupy_PYTHON)'; dlist=; list2=; test -n "$(pyglupydir)" ||
> > list=; \
> >      if test -n "$$list"; then \
> >        echo " $(MKDIR_P) '$(DESTDIR)$(pyglupydir)'"; \
> >        $(MKDIR_P) "$(DESTDIR)$(pyglupydir)" || exit 1; \
> >      fi; \
> >      for p in $$list; do \
> >        if test -f "$$p"; then b=; else b="$(srcdir)/"; fi; \
> >        if test -f $$b$$p; then \
> >          $(am__strip_dir) \
> >          dlist="$$dlist $$f"; \
> >          list2="$$list2 $$b$$p"; \
> >        else :; fi; \
> >      done; \
> >      for file in $$list2; do echo $$file; done | $(am__base_list) | \
> >      while read files; do \
> >        echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(pyglupydir)'"; \
> >        $(INSTALL_DATA) $$files "$(DESTDIR)$(pyglupydir)" || exit $$?; \
> >      done || exit $$?; \
> >      if test -n "$$dlist"; then \
> >        $(am__py_compile) --destdir "$(DESTDIR)" \
> >                          --basedir "$(pyglupydir)" $$dlist; \
> >      else :; fi
> > 
> > If you run `make install` without destdir then it will install to machine's
> > global path depending on prefix.(If this is the case then their is genuine
> > "permission denied" error in the machine I think.
> > 
> > If we are packaging or installing to custom target, we should pass DESTDIR.
> > 
> > DESTDIR=/build/install make install
> > 
> > 
> > 
> > Niels
> > 
> > 
> > regards
> > Aravinda
> > 
> > On 05/12/2016 12:29 PM, Niels de Vos wrote:
> > 
> > On Thu, May 12, 2016 at 01:14:07AM -0400, Raghavendra Gowdappa wrote:
> > https://build.gluster.org/job/smoke/27674/console 06:09:06 /bin/mkdir:
> > cannot create directory
> > `/usr/lib/python2.6/site-packages/gluster': Permission denied
> > 06:09:06 make[6]: *** [install-pyglupyPYTHON] Error 1
> > 
> > This definitely is a bug in the installation of glupy. Nothing should
> > get installed under /usr, teh installation process is instructed to do
> > its install under /build/install.
> > 
> > Did someone file a bug for this yet?
> > 
> > Thanks,
> > Niels
> > 
> > 06:09:06 make[5]: *** [install-am] Error 2
> > 06:09:06 make[4]: *** [install-recursive] Error 1
> > 06:09:06 make[3]: *** [install-recursive] Error 1
> > 06:09:06 make[2]: *** [install-recursive] Error 1
> > 06:09:06 make[1]: *** [install-recursive] Error 1
> > 06:09:06 make: *** [install-recursive] Error 1
> > 06:09:06 Build step 'Execute shell' marked build as failure
> > 06:09:06 Finished: FAILURE
> > 
> > regards,
> > Raghavendra
> > _______________________________________________
> > Gluster-devel mailing list Gluster-devel at gluster.org
> > http://www.gluster.org/mailman/listinfo/gluster-devel
> > _______________________________________________
> > Gluster-devel mailing list Gluster-devel at gluster.org
> > http://www.gluster.org/mailman/listinfo/gluster-devel
> > _______________________________________________
> > Gluster-devel mailing list Gluster-devel at gluster.org
> > http://www.gluster.org/mailman/listinfo/gluster-devel
> > _______________________________________________
> > Gluster-devel mailing list Gluster-devel at gluster.org
> > http://www.gluster.org/mailman/listinfo/gluster-devel
> > _______________________________________________
> > Gluster-devel mailing list Gluster-devel at gluster.org
> > http://www.gluster.org/mailman/listinfo/gluster-devel
> > _______________________________________________
> > Gluster-devel mailing list Gluster-devel at gluster.org
> > http://www.gluster.org/mailman/listinfo/gluster-devel
> > 
> > 
> > _______________________________________________
> > Gluster-devel mailing list
> > Gluster-devel at gluster.org
> > http://www.gluster.org/mailman/listinfo/gluster-devel
> _______________________________________________
> Gluster-devel mailing list
> Gluster-devel at gluster.org
> http://www.gluster.org/mailman/listinfo/gluster-devel
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://www.gluster.org/pipermail/gluster-devel/attachments/20160517/2d5309a7/attachment.sig>


More information about the Gluster-devel mailing list