Skip to content
Snippets Groups Projects
Commit 5c9b698d authored by Eleni Mathioulaki's avatar Eleni Mathioulaki
Browse files

Merge branch 'try_to_fix_BrainScaleS_install_tests' into 'master'

BrainScaleS: Fix segfault on exit() and provide run environment in install tests

See merge request technical-coordination/project-internal/devops/platform/ebrains-spack-builds!264
parents e0711301 3cd1a460
No related branches found
No related tags found
No related merge requests found
...@@ -199,6 +199,8 @@ build-spack-env-on-runner: ...@@ -199,6 +199,8 @@ build-spack-env-on-runner:
fi fi
# not succesfully installed packages: also keep the spack logs for any packages that failed # not succesfully installed packages: also keep the spack logs for any packages that failed
if cp --parents /tmp/$(whoami)/spack-stage/*/*.txt ./; then if cp --parents /tmp/$(whoami)/spack-stage/*/*.txt ./; then
# also collect all bss test results
cp --parents -r /tmp/$(whoami)/spack-stage/*/spack-src/build/test_results ./ || echo ""
mv ./tmp/$(whoami)/spack-stage spack_logs/not_installed mv ./tmp/$(whoami)/spack-stage spack_logs/not_installed
else else
echo "No packages failed to build, so no logs to collect" echo "No packages failed to build, so no logs to collect"
......
...@@ -14,10 +14,10 @@ class Hxtorch(WafPackage): ...@@ -14,10 +14,10 @@ class Hxtorch(WafPackage):
# This repo provides a waf binary used for the build below # This repo provides a waf binary used for the build below
git = "https://github.com/electronicvisions/pynn-brainscales.git" git = "https://github.com/electronicvisions/pynn-brainscales.git"
version('4.0-a4', branch='waf') version('4.0-rc1', branch='waf')
# PPU compiler dependencies # PPU compiler dependencies
depends_on('oppulance@4.0-a4') depends_on('oppulance@4.0-rc1')
# host software dependencies # host software dependencies
depends_on('bitsery', type=('build', 'link', 'run')) depends_on('bitsery', type=('build', 'link', 'run'))
...@@ -35,6 +35,7 @@ class Hxtorch(WafPackage): ...@@ -35,6 +35,7 @@ class Hxtorch(WafPackage):
depends_on('llvm', type=('build', 'link', 'run')) depends_on('llvm', type=('build', 'link', 'run'))
depends_on('log4cxx@0.12.1:', type=('build', 'link', 'run')) depends_on('log4cxx@0.12.1:', type=('build', 'link', 'run'))
depends_on('pkgconfig', type=('build', 'link', 'run')) depends_on('pkgconfig', type=('build', 'link', 'run'))
depends_on('psmisc', type=('run', 'test'))
depends_on('python@3.7.0:', type=('build', 'link', 'run')) # BrainScaleS(-2, type=('build', 'link', 'run')) only supports Python >= 3.7 depends_on('python@3.7.0:', type=('build', 'link', 'run')) # BrainScaleS(-2, type=('build', 'link', 'run')) only supports Python >= 3.7
depends_on('py-h5py', type=('build', 'link', 'run')) # PyNN tests need it depends_on('py-h5py', type=('build', 'link', 'run')) # PyNN tests need it
depends_on('py-jax@0.3.25:', type=('build', 'link', 'run')) depends_on('py-jax@0.3.25:', type=('build', 'link', 'run'))
...@@ -153,6 +154,8 @@ class Hxtorch(WafPackage): ...@@ -153,6 +154,8 @@ class Hxtorch(WafPackage):
'--project=flange@ebrains-' + str(spec.version), '--project=flange@ebrains-' + str(spec.version),
'--project=lib-rcf@ebrains-' + str(spec.version), '--project=lib-rcf@ebrains-' + str(spec.version),
'--project=bss-hw-params@ebrains-' + str(spec.version), '--project=bss-hw-params@ebrains-' + str(spec.version),
'--project=nhtl-extoll@ebrains-' + str(spec.version),
'--project=librma@ebrains-' + str(spec.version),
'--project=libnux@ebrains-' + str(spec.version) '--project=libnux@ebrains-' + str(spec.version)
) )
...@@ -168,12 +171,14 @@ class Hxtorch(WafPackage): ...@@ -168,12 +171,14 @@ class Hxtorch(WafPackage):
return args return args
def build_test(self): def build_test(self):
self.waf('install', '--test-execall') self.waf('build', '--test-execall')
def install_args(self): def install_args(self):
args = ['--test-execnone'] args = ['--test-execnone']
return args return args
# def install_test(self): def install_test(self):
# with working_dir('spack-test', create=True): with working_dir('spack-test', create=True):
# python('-c', 'import hxtorch; print(hxtorch.__file__)') old_pythonpath = os.environ.get('PYTHONPATH', '')
os.environ['PYTHONPATH'] = ':'.join([str(self.prefix.lib), old_pythonpath])
python('-v', '-X dev', '-c', 'import hxtorch; print(hxtorch.__file__)')
...@@ -22,8 +22,8 @@ class Oppulance(Package): ...@@ -22,8 +22,8 @@ class Oppulance(Package):
releases = [ releases = [
{ {
'version': '4.0-a4', 'version': '4.0-rc1',
'tag': 'ebrains-4.0-a4' 'tag': 'ebrains-4.0-rc1'
}, },
] ]
......
# Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
# Spack Project Developers. See the top-level COPYRIGHT file for details.
#
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
from spack import *
class Psmisc(AutotoolsPackage):
"""A package of small utilities that use the proc file-system."""
homepage = "http://psmisc.sf.net/"
url = "https://sourceforge.net/projects/psmisc/files/psmisc/psmisc-23.6.tar.xz"
version('23.6', sha256='257dde06159a4c49223d06f1cccbeb68933a4514fc8f1d77c64b54f0d108822a')
version('23.5', sha256='dc37ecc2f7e4a90a94956accc6e1c77adb71316b7c9cbd39b26738db0c3ae58b')
version('23.4', sha256='7f0cceeace2050c525f3ebb35f3ba01d618b8d690620580bdb8cd8269a0c1679')
version('23.3', sha256='41750e1a5abf7ed2647b094f58127c73dbce6876f77ba4e0a7e0995ae5c7279a')
depends_on('autoconf', type='build')
depends_on('automake', type='build')
depends_on('libtool', type='build')
depends_on('gettext', type=('build', 'link'))
depends_on('ncurses', type=('build', 'link'))
depends_on('dejagnu', type=('build', 'link'))
...@@ -13,10 +13,10 @@ class PynnBrainscales(WafPackage): ...@@ -13,10 +13,10 @@ class PynnBrainscales(WafPackage):
homepage = "https://github.com/electronicvisions/pynn-brainscales" homepage = "https://github.com/electronicvisions/pynn-brainscales"
git = "https://github.com/electronicvisions/pynn-brainscales.git" git = "https://github.com/electronicvisions/pynn-brainscales.git"
version('4.0-a4', branch='waf') version('4.0-rc1', branch='waf')
# PPU compiler dependencies # PPU compiler dependencies
depends_on('oppulance@4.0-a4') depends_on('oppulance@4.0-rc1')
# host software dependencies # host software dependencies
depends_on('bitsery', type=('build', 'link', 'run')) depends_on('bitsery', type=('build', 'link', 'run'))
...@@ -34,6 +34,7 @@ class PynnBrainscales(WafPackage): ...@@ -34,6 +34,7 @@ class PynnBrainscales(WafPackage):
depends_on('llvm', type=('build', 'link', 'run')) depends_on('llvm', type=('build', 'link', 'run'))
depends_on('log4cxx@0.12.1:', type=('build', 'link', 'run')) depends_on('log4cxx@0.12.1:', type=('build', 'link', 'run'))
depends_on('pkgconfig', type=('build', 'link', 'run')) depends_on('pkgconfig', type=('build', 'link', 'run'))
depends_on('psmisc', type=('run', 'test'))
depends_on('python@3.7.0:', type=('build', 'link', 'run')) # BrainScaleS(-2, type=('build', 'link', 'run')) only supports Python >= 3.7 depends_on('python@3.7.0:', type=('build', 'link', 'run')) # BrainScaleS(-2, type=('build', 'link', 'run')) only supports Python >= 3.7
depends_on('py-deap@1.3.1:', type=('build', 'link', 'run')) depends_on('py-deap@1.3.1:', type=('build', 'link', 'run'))
depends_on('py-h5py', type=('build', 'link', 'run')) # PyNN tests need it depends_on('py-h5py', type=('build', 'link', 'run')) # PyNN tests need it
...@@ -130,6 +131,8 @@ class PynnBrainscales(WafPackage): ...@@ -130,6 +131,8 @@ class PynnBrainscales(WafPackage):
'--project=flange@ebrains-' + str(spec.version), '--project=flange@ebrains-' + str(spec.version),
'--project=lib-rcf@ebrains-' + str(spec.version), '--project=lib-rcf@ebrains-' + str(spec.version),
'--project=bss-hw-params@ebrains-' + str(spec.version), '--project=bss-hw-params@ebrains-' + str(spec.version),
'--project=nhtl-extoll@ebrains-' + str(spec.version),
'--project=librma@ebrains-' + str(spec.version),
'--project=libnux@ebrains-' + str(spec.version) '--project=libnux@ebrains-' + str(spec.version)
) )
...@@ -145,12 +148,14 @@ class PynnBrainscales(WafPackage): ...@@ -145,12 +148,14 @@ class PynnBrainscales(WafPackage):
return args return args
def build_test(self): def build_test(self):
self.waf('install', '--test-execall') self.waf('build', '--test-execall')
def install_args(self): def install_args(self):
args = ['--test-execnone'] args = ['--test-execnone']
return args return args
# def install_test(self): def install_test(self):
# with working_dir('spack-test', create=True): with working_dir('spack-test', create=True):
# python('-c', 'import pynn_brainscales; print(pynn_brainscales.__file__)') old_pythonpath = os.environ.get('PYTHONPATH', '')
os.environ['PYTHONPATH'] = ':'.join([str(self.prefix.lib), old_pythonpath])
python('-c', 'import pynn_brainscales; print(pynn_brainscales.__file__)')
...@@ -19,8 +19,8 @@ spack: ...@@ -19,8 +19,8 @@ spack:
- py-tvb-library@2.7.3 - py-tvb-library@2.7.3
- py-tvb-storage@2.7.3 - py-tvb-storage@2.7.3
- py-tvb-framework@2.7.3.1 - py-tvb-framework@2.7.3.1
- pynn-brainscales@4.0-a4 - pynn-brainscales@4.0-rc1
- hxtorch@4.0-a4 - hxtorch@4.0-rc1
- py-nestml@5.2.0 - py-nestml@5.2.0
- py-neo@0.12.0 - py-neo@0.12.0
- py-hdmf@3.4.6 - py-hdmf@3.4.6
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment