Re: [easybuild] how to specify choices for dependencies?

2017-05-04 Thread Andreas Hilboll
Thanks, Alan and Gizo,

I'll take a look into this.

Would it be welcome to include this functionality in an upcoming PR to
include ecCodes and EMOS?  Or rather not, since this apparently depends
on lmod being the module system of choice?

Cheers,
  Andreas



Alan O'Cais writes:

> This sounds like a reasonable approach to me. You should probably specify one 
> python as one of your `builddependencies` and then create a modluafooter that 
> ensures you have a Python loaded, something like
> if not isloaded("Python") then
>   load("Python")
> end
> That should still allow you to keep the python bindings as part of your 
> sanity check too.
>
> Alan
>
> On 2 May 2017 at 21:12, 
> > wrote:
>
> Hi,
>
> you could implemet this logic as some lua function defined in SitePackage.lua 
> and then use the
> option modluafooter in easyconfig of emos. Not very nice, but should work.
>
> http://lmod.readthedocs.io/en/latest/050_lua_modulefiles.html
>
> Best,
> Gizo
>
> Quoting Andreas Hilboll >:
>
> Hi all,
>
> I want to create easyconfigs for ecCodes[1] and EMOS[2].  ecCodes comes
> with Python bindings, so I'm setting a
>
> versionsuffix = '-Python-%(pyver)s'
>
> EMOS depends on ecCodes, but does not depend on Python at all.
>
> I have built two ecCodes modules, one for Python-2.7.11 and one for
> Python-3.5.1.  I'm wondering how to specify the dependencies in the EMOS
> easyconfig, without having to provide a Python-dependent easyconfig for
> EMOS.  Ideally, when loading EMOS, lmod should pick the ecCodes module
> which causes the least conflict:
>
> - if no other Python is loaded, chose any default
> - if either Python/2.7.11 or Python/3.5.1 are already loaded, chose the
>   matching ecCodes module
>
> Is this somehow possible?
>
> Cheers,
>   Andreas.
>
> [1] https://software.ecmwf.int/wiki/display/ECC
> [2] https://software.ecmwf.int/wiki/display/EMOS
>
> --
> Dr. Andreas Hilboll
>
> Center for Marine Environmental Sciences (MARUM)
> - AND -
> Institute of Environmental Physics (IUP)
>
> University of Bremen
>
> NW1 / S3132
> Otto-Hahn-Allee 1
> D-28359 Bremen
> Germany
>
> +49(0)421 218 62133  (phone)
> +49(0)421 218 98 62133 (fax)
> http://www.iup.uni-bremen.de/~hilboll
>
>
> --
> Dr. Gizo Nanava
> Leibniz Universitaet IT Services
> Leibniz Universitaet Hannover
> Schlosswender Str. 5
> D-30159 Hannover
> Tel +49 511 762 7919085
> http://www.luis.uni-hannover.de


-- 
Dr. Andreas Hilboll

Center for Marine Environmental Sciences (MARUM)
- AND -
Institute of Environmental Physics (IUP)

University of Bremen

NW1 / S3132
Otto-Hahn-Allee 1
D-28359 Bremen
Germany

+49(0)421 218 62133  (phone)
+49(0)421 218 98 62133 (fax)
http://www.iup.uni-bremen.de/~hilboll


Re: [easybuild] how to specify choices for dependencies?

2017-05-03 Thread Alan O'Cais
This sounds like a reasonable approach to me. You should probably specify one 
python as one of your `builddependencies` and then create a modluafooter that 
ensures you have a Python loaded, something like
if not isloaded("Python") then
  load("Python")
end
That should still allow you to keep the python bindings as part of your sanity 
check too.

Alan

On 2 May 2017 at 21:12, 
> wrote:

Hi,

you could implemet this logic as some lua function defined in SitePackage.lua 
and then use the
option modluafooter in easyconfig of emos. Not very nice, but should work.

http://lmod.readthedocs.io/en/latest/050_lua_modulefiles.html

Best,
Gizo

Quoting Andreas Hilboll >:

Hi all,

I want to create easyconfigs for ecCodes[1] and EMOS[2].  ecCodes comes
with Python bindings, so I'm setting a

versionsuffix = '-Python-%(pyver)s'

EMOS depends on ecCodes, but does not depend on Python at all.

I have built two ecCodes modules, one for Python-2.7.11 and one for
Python-3.5.1.  I'm wondering how to specify the dependencies in the EMOS
easyconfig, without having to provide a Python-dependent easyconfig for
EMOS.  Ideally, when loading EMOS, lmod should pick the ecCodes module
which causes the least conflict:

- if no other Python is loaded, chose any default
- if either Python/2.7.11 or Python/3.5.1 are already loaded, chose the
  matching ecCodes module

Is this somehow possible?

Cheers,
  Andreas.

[1] https://software.ecmwf.int/wiki/display/ECC
[2] https://software.ecmwf.int/wiki/display/EMOS

--
Dr. Andreas Hilboll

Center for Marine Environmental Sciences (MARUM)
- AND -
Institute of Environmental Physics (IUP)

University of Bremen

NW1 / S3132
Otto-Hahn-Allee 1
D-28359 Bremen
Germany

+49(0)421 218 62133  (phone)
+49(0)421 218 98 62133 (fax)
http://www.iup.uni-bremen.de/~hilboll


--
Dr. Gizo Nanava
Leibniz Universitaet IT Services
Leibniz Universitaet Hannover
Schlosswender Str. 5
D-30159 Hannover
Tel +49 511 762 7919085
http://www.luis.uni-hannover.de






--
Dr. Alan O'Cais
E-CAM Software Manager
Juelich Supercomputing Centre
Forschungszentrum Juelich GmbH
52425 Juelich, Germany

Phone: +49 2461 61 5213
Fax: +49 2461 61 6656
E-mail: a.oc...@fz-juelich.de
WWW:http://www.fz-juelich.de/ias/jsc/EN




Forschungszentrum Juelich GmbH
52425 Juelich
Sitz der Gesellschaft: Juelich
Eingetragen im Handelsregister des Amtsgerichts Dueren Nr. HR B 3498
Vorsitzender des Aufsichtsrats: MinDir Dr. Karl Eugen Huthmacher
Geschaeftsfuehrung: Prof. Dr.-Ing. Wolfgang Marquardt (Vorsitzender),
Karsten Beneke (stellv. Vorsitzender), Prof. Dr.-Ing. Harald Bolt,
Prof. Dr. Sebastian M. Schmidt





[easybuild] how to specify choices for dependencies?

2017-04-21 Thread Andreas Hilboll
Hi all,

I want to create easyconfigs for ecCodes[1] and EMOS[2].  ecCodes comes
with Python bindings, so I'm setting a

versionsuffix = '-Python-%(pyver)s'

EMOS depends on ecCodes, but does not depend on Python at all.

I have built two ecCodes modules, one for Python-2.7.11 and one for
Python-3.5.1.  I'm wondering how to specify the dependencies in the EMOS
easyconfig, without having to provide a Python-dependent easyconfig for
EMOS.  Ideally, when loading EMOS, lmod should pick the ecCodes module
which causes the least conflict:

- if no other Python is loaded, chose any default
- if either Python/2.7.11 or Python/3.5.1 are already loaded, chose the
  matching ecCodes module

Is this somehow possible?

Cheers,
  Andreas.

[1] https://software.ecmwf.int/wiki/display/ECC
[2] https://software.ecmwf.int/wiki/display/EMOS

-- 
Dr. Andreas Hilboll

Center for Marine Environmental Sciences (MARUM)
- AND -
Institute of Environmental Physics (IUP)

University of Bremen

NW1 / S3132
Otto-Hahn-Allee 1
D-28359 Bremen
Germany

+49(0)421 218 62133  (phone)
+49(0)421 218 98 62133 (fax)
http://www.iup.uni-bremen.de/~hilboll