Package: Don't warn for missing source on bundle packages without code (#30913)
This commit is contained in:
parent
932065beca
commit
9d7cc43673
@ -1721,7 +1721,7 @@ def content_hash(self, content=None):
|
||||
# referenced by branch name rather than tag or commit ID.
|
||||
env = spack.environment.active_environment()
|
||||
from_local_sources = env and env.is_develop(self.spec)
|
||||
if not self.spec.external and not from_local_sources:
|
||||
if self.has_code and not self.spec.external and not from_local_sources:
|
||||
message = 'Missing a source id for {s.name}@{s.version}'
|
||||
tty.warn(message.format(s=self))
|
||||
hash_content.append(''.encode('utf-8'))
|
||||
|
@ -414,9 +414,27 @@ def test_nosource_pkg_install(
|
||||
pkg.do_install()
|
||||
out = capfd.readouterr()
|
||||
assert "Installing dependency-install" in out[0]
|
||||
|
||||
# Make sure a warning for missing code is issued
|
||||
assert "Missing a source id for nosource" in out[1]
|
||||
|
||||
|
||||
@pytest.mark.disable_clean_stage_check
|
||||
def test_nosource_bundle_pkg_install(
|
||||
install_mockery, mock_fetch, mock_packages, capfd):
|
||||
"""Test install phases with the nosource-bundle package."""
|
||||
spec = Spec('nosource-bundle').concretized()
|
||||
pkg = spec.package
|
||||
|
||||
# Make sure install works even though there is no associated code.
|
||||
pkg.do_install()
|
||||
out = capfd.readouterr()
|
||||
assert "Installing dependency-install" in out[0]
|
||||
|
||||
# Make sure a warning for missing code is *not* issued
|
||||
assert "Missing a source id for nosource" not in out[1]
|
||||
|
||||
|
||||
def test_nosource_pkg_install_post_install(
|
||||
install_mockery, mock_fetch, mock_packages):
|
||||
"""Test install phases with the nosource package with post-install."""
|
||||
|
@ -0,0 +1,17 @@
|
||||
# Copyright 2013-2022 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.package import *
|
||||
|
||||
|
||||
class NosourceBundle(BundlePackage):
|
||||
"""Simple bundle package with one dependency"""
|
||||
|
||||
homepage = "http://www.example.com"
|
||||
|
||||
version('1.0')
|
||||
|
||||
depends_on('dependency-install')
|
@ -7,8 +7,8 @@
|
||||
from spack.package import *
|
||||
|
||||
|
||||
class Nosource(BundlePackage):
|
||||
"""Simple bundle package with one dependency"""
|
||||
class Nosource(Package):
|
||||
"""Simple package with no source and one dependency"""
|
||||
|
||||
homepage = "http://www.example.com"
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user