dmwm / PHEDEX

CMS data-placement suite
8 stars 18 forks source link

First prototype of circuit awarness integration in the Download agent #1004

Closed juztas closed 8 years ago

juztas commented 8 years ago

This is first implementation, which was mainly done by Vlad. There was presentations and some discussions about movement of it into production. Currently I am working on rewriting all this stuff into perl moose. Also it has eclipse project for coding it more easily, so I added it's xml file.

Will create pull request for java 1.7 into cmsdist and this has to be added into phedex RPM. There is one comment, which has to be changed during RPM creation, to point to correct nsi-cli location.

juztas commented 8 years ago

Here is java spec file pull request: https://github.com/cms-sw/cmsdist/pull/1837

nikmagini commented 8 years ago

Hi Justas,

a few suggestions on the pull request, let me know if you agree:

1) Utilities/CreateLinks.pl looks like a testbed-specific script rather than a generic tool, so I think it would be more appropriate to put it in a new dir in Testbed e.g. in Testbed/Circuits. The name of the script is also confusing since "Links" has a precise meaning in PhEDEx (a transfer link between two nodes) so I propose to rename it to Testbed/Circuits/CreateSymLinks.pl to avoid confusion

2) Same for perl_lib/PHEDEX/StartFileDownload.pl : I propose to rename it to Testbed/Circuits/StartFileDownload.pl

3) perl_lib/PHEDEX/Tests/do_all_tests : I propose to put it into a new Tests scripts top-level directory i.e. rename to Tests/do_all_tests

4) perl_lib/do_all_tests -> looks like a duplicate of the previous file, so remove or merge with the previous file

5) perl_lib/PHEDEX/File/Download/Circuits/Backend/NSI/nsi-cli-1.2.1-one-jar.jar -> can we turn it into an external dependency? If not, I'd still recommend to put it outside of perl_lib since it's not a perl module. E.g. rename it to jar/PHEDEX/File/Download/Circuits/Backend/NSI/nsi-cli-1.2.1-one-jar.jar jar Also note that you don't need to change the path at rpm installation time - I would recommend getting the path from the env using variable $ENV{'PHEDEX_ROOT'}, and/or making the jar path a configurable option in the agent so that the site admin can set it to whatever he wants.

If you agree please go ahead and commit to update the pull request. Thanks! Nicolo

juztas commented 8 years ago

Sure, will change that ;) First let me try with Java 8 if everything works