Hi Alan, your example worked quite well. The only issue I've found is that the GOPATH export has to be moved to
install_cmd += "export GOPATH=%(installdir)s/ && go build && go install " I don't understand why ... but this code does not work: # Update GOPATH so install location is correct install_cmd = "export GOPATH=%(installdir)s:$GOPATH && " # Update PATH to include new bin directory (in case it is needed) install_cmd += "export PATH=%(installdir)s/bin:$PATH && " # Do the ecr-login installation install_cmd += "cd %(installdir)s/src/ github.com/awslabs/%(name)s/ecr-login/cli/docker-credential-ecr-login/ && " install_cmd += "go build && go install " Thanks a lot, Arnau El mié., 25 jul. 2018 a las 9:29, Arnau (<[email protected]>) escribió: > Hi Alan, > > thanks for your answer. > I'm going to try the example you provided. > > Sure that -u is not the way... but installing from sources is a bit > tedious (and then you have to install all depdencies as well), so, as there > was no easyblock for go, I was tempted to use this "dirty" aproach :-) > > I'll let you know if the exmaple you provided works. > > thanks for your help, > Arnau > > El mar., 24 jul. 2018 a las 15:39, Alan O'Cais (<[email protected]>) > escribió: > >> Hi Arnau, >> >> I've no experience with Go installations either so maybe someone else add >> some pointers. I took a look and created a working example easyconfig at >> https://gist.github.com/ocaisa/1057ca936273db6715768fcb9b4b9191 >> >> I would say that creating your own EasyBlock is ultimately the right way >> to go as there a good few caveats. In terms of reproducibility, I don't >> think using the -u flag is a good idea: >> >> The -u flag instructs get to use the network to update the named packages >> and their dependencies. By default, get uses the network to check out >> missing packages but does not use it to look for updates to existing >> packages. >> >> From what I've read, the GOPATH looks like it needs to be handled the >> same we currently handle python extensions with the caveat that it also >> seems to be the place where the installation is made: >> >> Go searches each directory listed in GOPATH to find source code, but new >> packages are always downloaded into the first directory in the list. >> >> You also probably want to preemptively set your PATH to include >> %(installdir)s/bin in case it is needed. >> To do things "properly" we would really need a gopackage.py easyblock , >> the easyconfig is too hacked and would be tedious to update/maintain. >> >> Alan >> >> On Tue, 24 Jul 2018 at 12:03, Arnau <[email protected]> wrote: >> >>> Hi all, >>> >>> I need to install a go program and the installation instruictions say >>> that I need to run : >>> >>> go get -u github.com/..... >>> >>> I've been looking into the EB doc and did not find any GO easyblock (or >>> similar), which means that I'll have to create an easyconfgi with many >>> customizations. >>> So I'd like to ask you for experience and recommendations for does kind >>> of installations. (I'm quite new to go installations). Or even if someone >>> already created some kind of GO easyblock. >>> >>> TIA, >>> Arnau >>> >> >> >> -- >> 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: [email protected] >> 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 >> >> ------------------------------------------------------------------------------------------------ >> >> ------------------------------------------------------------------------------------------------ >> >>

