Lines Matching +full:run +full:- +full:in +full:- +full:wait
3 # SPDX-License-Identifier: Apache-2.0
5 This script help you to compare footprint results with previous commits in git.
8 To run it you need to set up the same environment as twister.
15 current working directory if we have changes in git tree or we don't have git.
16 HEAD in any other case.
20 HEAD is we have changes in the working tree.
34 if "ZEPHYR_BASE" not in os.environ:
44 proc = subprocess.Popen('git rev-parse --is-inside-work-tree',
47 if proc.wait() != 0:
62 format = logging.Formatter('%(levelname)-8s: %(message)s')
73 "To run it you need to set up the same environment as twister.",
75 parser.add_argument('-b', '--base-commit', default=None,
79 parser.add_argument('-c', '--commit', default=None,
86 proc = subprocess.Popen('git rev-parse %s' % commit, stdout=subprocess.PIPE,
88 if proc.wait() == 0:
89 commit_id = proc.stdout.read().decode("utf-8").strip()
104 proc = subprocess.Popen('git diff --quiet', stdout=subprocess.PIPE,
106 if proc.wait() != 0:
107 raise Exception("Cannot continue, you have unstaged changes in your working tree")
109 proc = subprocess.Popen('git reset %s --hard' % commit,
113 if proc.wait() == 0:
123 cmd = '/bin/bash -c "source ./zephyr-env.sh && twister'
124 cmd += ' +scripts/sanity_chk/sanity_compare.args -o %s"' % output_file
130 if proc.wait() == 0:
134 logger.error("Couldn't build footprint apps in commit %s" % commit)
136 raise Exception("Couldn't build footprint apps in commit %s" % commit)
143 cmd = "git clone --no-hardlinks %s" % os.environ.get('ZEPHYR_BASE')
152 if proc.wait() == 0:
164 for row in tmp:
176 proc = subprocess.Popen('git diff --quiet', stdout=subprocess.PIPE,
178 if proc.wait() != 0:
232 for type, data in {'base': base_results, 'current': current_results}.items():
234 for row in data:
236 for m, mtype in interesting_metrics:
239 if not row["test"] in metrics[type]:
243 for test, platforms in metrics['current'].items():
244 if not test in metrics['base']:
248 for platform, test_data in platforms.items():
249 if not platform in metrics['base'][test]:
253 for metric, _ in interesting_metrics:
254 if metric not in golden_metric or metric not in test_data:
258 delta = test_data[metric] - golden_metric[metric]
276 for test in sorted(deltas):
278 for platform, data in deltas[test].items():
280 for metric, value in data.items():
281 percentage = (float(value['delta']) / float(value['current'] -
288 print("There are no changes in RAM neither in ROM of footprint apps.")