Opened 10 years ago
Closed 9 years ago
#386 closed enhancement (fixed)
Check whether $BUFR_TABLES and $BUFR_LIBRARY are writable before trying to do so
Reported by: | Ian Culverwell | Owned by: | Dave Offiler |
---|---|---|---|
Priority: | normal | Milestone: | 9.0 |
Component: | ropp_io | Version: | 7.1 |
Keywords: | BUFR | Cc: |
Description
Axel von Engeln (EUM) writes:
I just came across another possible problem. I wanted to re-install ROPP7 into a local directory, using the already installed libs of netCDF, bufr, etc, and it fails since it cannot remove the roppbufrcodes.nl file (which we have centrally installed). Not sure why this is required. Might be sufficient to just cross check if the latest version is there.
Proposed solution: see ticket title.
Change history (4)
comment:1 by , 10 years ago
comment:2 by , 9 years ago
Owner: | changed from | to
---|---|
Status: | new → assigned |
comment:3 by , 9 years ago
Status: | assigned → accepted |
---|
There is no need in normal usage to check whether BUFR_LIBRARY or BUFR_TABLE are writeable by the user as the buildpack script sets both to ROPP_ROOT/data/bufr and ROPP_ROOT is already checked.
Nevertheless, I've adapted the existing check as a new function which is then used to check ROPP_ROOT as before, and BUFR_LIBRARY or BUFR_TABLES when starting to build those packages (even though those checks are really redundant) in my do_build90 branch.
The new function has been tested stand-alone and writeability of ROPP_ROOT can simply be tested by setting that environment variable to a protected path such as /usr. If ROPP_ROOT is writeable, then the BUFR directory will then automatically be ok - unless ROPP_ROOT/data/bufr pre-exists and has been explicitly denied access to the user thus:
$ chmod 555 $ROPP_ROOT/data/bufr $ ll -d $ROPP_ROOT/data/bufr dr-xr-xr-x 2 frdo satsense 4408 Sep 8 12:37 /data/nwp1/grassaf/ropp/data/bufr/ $ ./buildpack mobufr ifort >> Checking MOBUFR package ... - Found installed source package bufr-23.0.1 (MOBUFR version 23.0.1) ------------------------------------------------------------------ >> Building MetDB BUFR (v23.0.1) with 'ifort' F95 compiler on LINUX ------------------------------------------------------------------ *** You do not have write permission to /data/nwp1/grassaf/ropp/data/bufr/ Please set another path for BUFR_LIBRARY # back to normal $ chmod 775 $ROPP_ROOT/data/bufr $ ll -d $ROPP_ROOT/data/bufr drwxrwxr-x 2 frdo satsense 4408 Sep 8 12:37 /data/nwp1/grassaf/ropp/data/bufr/
However, Axel's problem would not be solved by this update; a central directory may be writeable by the user (and group), but individual files created there by someone else in the group may not be deleteable by the current user. Setting correct group permissions - either post-creation or by default mode - is an issue for the people concerned; it's not appropriate for ROPP to mess with such system/security/permission settings.
comment:4 by , 9 years ago
Resolution: | → fixed |
---|---|
Status: | accepted → closed |
Closing this ticket as job done according to the title as requested.
Change to ropp_io/bufr/Makefile.am ropp_io/bufr/Makefile.in and (reversible) committed at r4403.