Move packages and mock packages to /var/spack
This commit is contained in:
parent
566dc037e7
commit
81dc27bf41
39 changed files with 18 additions and 17 deletions
10
bin/spack
10
bin/spack
|
@ -39,6 +39,12 @@ SPACK_PREFIX = os.path.dirname(os.path.dirname(SPACK_FILE))
|
||||||
SPACK_LIB_PATH = os.path.join(SPACK_PREFIX, "lib", "spack")
|
SPACK_LIB_PATH = os.path.join(SPACK_PREFIX, "lib", "spack")
|
||||||
sys.path.insert(0, SPACK_LIB_PATH)
|
sys.path.insert(0, SPACK_LIB_PATH)
|
||||||
|
|
||||||
|
# If there is no working directory, use the spack prefix.
|
||||||
|
try:
|
||||||
|
os.getcwd()
|
||||||
|
except OSError:
|
||||||
|
os.chdir(SPACK_PREFIX)
|
||||||
|
|
||||||
# clean up the scope and start using spack package instead.
|
# clean up the scope and start using spack package instead.
|
||||||
del SPACK_FILE, SPACK_PREFIX, SPACK_LIB_PATH
|
del SPACK_FILE, SPACK_PREFIX, SPACK_LIB_PATH
|
||||||
import llnl.util.tty as tty
|
import llnl.util.tty as tty
|
||||||
|
@ -74,10 +80,8 @@ args = parser.parse_args()
|
||||||
spack.verbose = args.verbose
|
spack.verbose = args.verbose
|
||||||
spack.debug = args.debug
|
spack.debug = args.debug
|
||||||
if args.mock:
|
if args.mock:
|
||||||
from llnl.util.filesystem import join_path
|
|
||||||
from spack.packages import PackageDB
|
from spack.packages import PackageDB
|
||||||
mock_path = join_path(spack.module_path, 'test', 'mock_packages')
|
spack.db = PackageDB(spack.mock_packages_path)
|
||||||
spack.db = PackageDB(mock_path)
|
|
||||||
|
|
||||||
# If the user asked for it, don't check ssl certs.
|
# If the user asked for it, don't check ssl certs.
|
||||||
if args.insecure:
|
if args.insecure:
|
||||||
|
|
|
@ -53,8 +53,13 @@
|
||||||
#
|
#
|
||||||
# Set up the packages database.
|
# Set up the packages database.
|
||||||
#
|
#
|
||||||
db = PackageDB(join_path(module_path, "packages"))
|
packages_path = join_path(var_path, "packages")
|
||||||
|
db = PackageDB(packages_path)
|
||||||
|
|
||||||
|
#
|
||||||
|
# This is the path to mock packages used by spack for testing.
|
||||||
|
#
|
||||||
|
mock_packages_path = join_path(var_path, "mock_packages")
|
||||||
|
|
||||||
#
|
#
|
||||||
# This controls how spack lays out install prefixes and
|
# This controls how spack lays out install prefixes and
|
||||||
|
|
|
@ -200,10 +200,6 @@ def get_class_for_package_name(self, pkg_name):
|
||||||
else:
|
else:
|
||||||
raise UnknownPackageError(pkg_name)
|
raise UnknownPackageError(pkg_name)
|
||||||
|
|
||||||
# Figure out pacakges module based on self.root
|
|
||||||
if not re.match(r'%s' % spack.module_path, self.root):
|
|
||||||
raise RuntimeError("Packages path is not a submodule of spack.")
|
|
||||||
|
|
||||||
class_name = class_name_for_package_name(pkg_name)
|
class_name = class_name_for_package_name(pkg_name)
|
||||||
try:
|
try:
|
||||||
module_name = _imported_packages_module + '.' + pkg_name
|
module_name = _imported_packages_module + '.' + pkg_name
|
|
@ -24,15 +24,10 @@
|
||||||
##############################################################################
|
##############################################################################
|
||||||
import unittest
|
import unittest
|
||||||
|
|
||||||
from llnl.util.lang import list_modules
|
|
||||||
from llnl.util.filesystem import join_path
|
|
||||||
|
|
||||||
import spack
|
import spack
|
||||||
from spack.packages import PackageDB
|
from spack.packages import PackageDB
|
||||||
from spack.spec import Spec
|
from spack.spec import Spec
|
||||||
|
|
||||||
mock_packages_path = join_path(spack.module_path, 'test', 'mock_packages')
|
|
||||||
|
|
||||||
def set_pkg_dep(pkg, spec):
|
def set_pkg_dep(pkg, spec):
|
||||||
"""Alters dependence information for a pacakge.
|
"""Alters dependence information for a pacakge.
|
||||||
Use this to mock up constraints.
|
Use this to mock up constraints.
|
||||||
|
@ -48,7 +43,7 @@ def setUp(self):
|
||||||
# us to set up contrived packages that don't interfere with
|
# us to set up contrived packages that don't interfere with
|
||||||
# real ones.
|
# real ones.
|
||||||
self.real_db = spack.db
|
self.real_db = spack.db
|
||||||
spack.db = PackageDB(mock_packages_path)
|
spack.db = PackageDB(spack.mock_packages_path)
|
||||||
|
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
|
|
|
@ -24,9 +24,10 @@
|
||||||
##############################################################################
|
##############################################################################
|
||||||
import unittest
|
import unittest
|
||||||
|
|
||||||
|
from llnl.util.filesystem import join_path
|
||||||
|
|
||||||
import spack
|
import spack
|
||||||
import spack.packages as packages
|
import spack.packages as packages
|
||||||
|
|
||||||
from spack.test.mock_packages_test import *
|
from spack.test.mock_packages_test import *
|
||||||
|
|
||||||
|
|
||||||
|
@ -43,7 +44,7 @@ def test_package_name(self):
|
||||||
|
|
||||||
def test_package_filename(self):
|
def test_package_filename(self):
|
||||||
filename = spack.db.filename_for_package_name('mpich')
|
filename = spack.db.filename_for_package_name('mpich')
|
||||||
self.assertEqual(filename, join_path(mock_packages_path, 'mpich', 'package.py'))
|
self.assertEqual(filename, join_path(spack.mock_packages_path, 'mpich', 'package.py'))
|
||||||
|
|
||||||
|
|
||||||
def test_package_name(self):
|
def test_package_name(self):
|
||||||
|
@ -53,7 +54,7 @@ def test_package_name(self):
|
||||||
|
|
||||||
def test_nonexisting_package_filename(self):
|
def test_nonexisting_package_filename(self):
|
||||||
filename = spack.db.filename_for_package_name('some-nonexisting-package')
|
filename = spack.db.filename_for_package_name('some-nonexisting-package')
|
||||||
self.assertEqual(filename, join_path(mock_packages_path, 'some-nonexisting-package', 'package.py'))
|
self.assertEqual(filename, join_path(spack.mock_packages_path, 'some-nonexisting-package', 'package.py'))
|
||||||
|
|
||||||
|
|
||||||
def test_package_class_names(self):
|
def test_package_class_names(self):
|
||||||
|
|
Loading…
Reference in a new issue