diff --git a/builder/core/data.py b/builder/core/data.py index 2ce27aea3..36f861c2c 100644 --- a/builder/core/data.py +++ b/builder/core/data.py @@ -215,6 +215,15 @@ class PKG_TOOLS(Enum): 'python': "python3", }, }, + 'al2023': { + 'os': 'linux', + 'pkg_tool': PKG_TOOLS.DNF, + 'pkg_update': 'dnf update -y', + 'pkg_install': 'dnf install -y', + 'variables': { + 'python': "python3", + }, + }, 'manylinux': { 'os': 'linux', 'pkg_tool': PKG_TOOLS.YUM, @@ -321,9 +330,6 @@ class PKG_TOOLS(Enum): 'armv7': { 'run_tests': False }, - 'armv8': { - 'run_tests': False - }, 'mips': { 'run_tests': False }, diff --git a/builder/core/project.py b/builder/core/project.py index d473627c0..a204f511f 100644 --- a/builder/core/project.py +++ b/builder/core/project.py @@ -553,7 +553,8 @@ def build_consumers(self, env): for c in consumers: build_consumers += _build_project(c, env) # build consumer tests - build_consumers += to_list(c.test(env)) + if c.needs_tests(env): + build_consumers += to_list(c.test(env)) if len(build_consumers) == 0: return None return Script(build_consumers, name='build consumers of {}'.format(self.name)) diff --git a/builder/main.py b/builder/main.py index b3f759dee..61beb82f6 100755 --- a/builder/main.py +++ b/builder/main.py @@ -73,7 +73,8 @@ def post_build(env): return env.project.post_build(env) def test(env): - return env.project.test(env) + if env.project.needs_tests(env): + return env.project.test(env) def install(env): return env.project.install(env) diff --git a/tests/test_project.py b/tests/test_project.py index 996255d2f..c6b2e4e97 100644 --- a/tests/test_project.py +++ b/tests/test_project.py @@ -16,6 +16,7 @@ 'name': 'test-proj', 'search_dirs': [test_data_dir], 'path': here, + 'run_tests': True, } @@ -148,7 +149,8 @@ def test_downstream_tests_build_by_default(self): ] p = Project(**config) - mock_env = mock.Mock(name='MockEnv', config=config) + m_toolchain = mock.Mock(name='mock toolchain', cross_compile=False) + mock_env = mock.Mock(name='MockEnv', config=config, project=p, toolchain=m_toolchain) mock_env.spec = BuildSpec() steps = p.build_consumers(mock_env) self._assert_step_contains_all(steps, ['test lib-1']) @@ -163,7 +165,8 @@ def test_downstream_post_build_runs_before_tests(self): ] p = Project(**config) - mock_env = mock.Mock(name='MockEnv', config=config) + m_toolchain = mock.Mock(name='mock toolchain', cross_compile=False) + mock_env = mock.Mock(name='MockEnv', config=config, project=p, toolchain=m_toolchain) mock_env.spec = BuildSpec() steps = p.build_consumers(mock_env) self._assert_step_contains_all(steps, ['post build lib-1', 'test lib-1'])