diff options
Diffstat (limited to 'scripts/yocto-compat-layer.py')
| -rwxr-xr-x | scripts/yocto-compat-layer.py | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/scripts/yocto-compat-layer.py b/scripts/yocto-compat-layer.py index 30c55a918f..a16974f98f 100755 --- a/scripts/yocto-compat-layer.py +++ b/scripts/yocto-compat-layer.py | |||
| @@ -30,12 +30,12 @@ CASES_PATHS = [os.path.join(os.path.abspath(os.path.dirname(__file__)), | |||
| 30 | 'lib', 'compatlayer', 'cases')] | 30 | 'lib', 'compatlayer', 'cases')] |
| 31 | logger = scriptutils.logger_create(PROGNAME, stream=sys.stdout) | 31 | logger = scriptutils.logger_create(PROGNAME, stream=sys.stdout) |
| 32 | 32 | ||
| 33 | def test_layer_compatibility(td, layer): | 33 | def test_layer_compatibility(td, layer, test_software_layer_signatures): |
| 34 | from compatlayer.context import CompatLayerTestContext | 34 | from compatlayer.context import CompatLayerTestContext |
| 35 | logger.info("Starting to analyze: %s" % layer['name']) | 35 | logger.info("Starting to analyze: %s" % layer['name']) |
| 36 | logger.info("----------------------------------------------------------------------") | 36 | logger.info("----------------------------------------------------------------------") |
| 37 | 37 | ||
| 38 | tc = CompatLayerTestContext(td=td, logger=logger, layer=layer) | 38 | tc = CompatLayerTestContext(td=td, logger=logger, layer=layer, test_software_layer_signatures=test_software_layer_signatures) |
| 39 | tc.loadTests(CASES_PATHS) | 39 | tc.loadTests(CASES_PATHS) |
| 40 | return tc.runTests() | 40 | return tc.runTests() |
| 41 | 41 | ||
| @@ -53,6 +53,12 @@ def main(): | |||
| 53 | help='List of MACHINEs to be used during testing', action='store') | 53 | help='List of MACHINEs to be used during testing', action='store') |
| 54 | parser.add_argument('--additional-layers', nargs="+", | 54 | parser.add_argument('--additional-layers', nargs="+", |
| 55 | help='List of additional layers to add during testing', action='store') | 55 | help='List of additional layers to add during testing', action='store') |
| 56 | group = parser.add_mutually_exclusive_group() | ||
| 57 | group.add_argument('--with-software-layer-signature-check', action='store_true', dest='test_software_layer_signatures', | ||
| 58 | default=True, | ||
| 59 | help='check that software layers do not change signatures (on by default)') | ||
| 60 | group.add_argument('--without-software-layer-signature-check', action='store_false', dest='test_software_layer_signatures', | ||
| 61 | help='disable signature checking for software layers') | ||
| 56 | parser.add_argument('-n', '--no-auto', help='Disable auto layer discovery', | 62 | parser.add_argument('-n', '--no-auto', help='Disable auto layer discovery', |
| 57 | action='store_true') | 63 | action='store_true') |
| 58 | parser.add_argument('-d', '--debug', help='Enable debug output', | 64 | parser.add_argument('-d', '--debug', help='Enable debug output', |
| @@ -173,7 +179,7 @@ def main(): | |||
| 173 | layers_tested = layers_tested + 1 | 179 | layers_tested = layers_tested + 1 |
| 174 | continue | 180 | continue |
| 175 | 181 | ||
| 176 | result = test_layer_compatibility(td, layer) | 182 | result = test_layer_compatibility(td, layer, args.test_software_layer_signatures) |
| 177 | results[layer['name']] = result | 183 | results[layer['name']] = result |
| 178 | results_status[layer['name']] = 'PASS' if results[layer['name']].wasSuccessful() else 'FAIL' | 184 | results_status[layer['name']] = 'PASS' if results[layer['name']].wasSuccessful() else 'FAIL' |
| 179 | layers_tested = layers_tested + 1 | 185 | layers_tested = layers_tested + 1 |
