[Gluster-devel] [smoke failure] Permission denied error while install-pygluypPYTHON
Aravinda
avishwan at redhat.com
Fri May 13 04:29:55 UTC 2016
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
>
>
> 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
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.gluster.org/pipermail/gluster-devel/attachments/20160513/dc496460/attachment-0001.html>
More information about the Gluster-devel
mailing list