diff options
author | Zach White <skullydazed@gmail.com> | 2021-05-10 11:18:44 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-05-10 11:18:44 -0700 |
commit | a3e7f3e7c58ee98596ead5c213f3a9ed8340cd80 (patch) | |
tree | ef0cb85205fad7562045f23caa8a16384e43bbb5 /lib/python/qmk/cli/pyformat.py | |
parent | 66ed80ad3a0edecd9d7abbef71fc2a6e3e59b541 (diff) |
Improve our CI tests (#11476)
* add a test and dry-run to qmk generate-api
* add a dry-run to qmk pyformat
* Add a --dry-run to qmk cformat
* reverse the order of nose2 and flake8 tests
* run CI test against cformat and pyformat
* fix programming errors
* tweak job name
* fix argument
* refine the files we select
* fix stack trace in --ci
* make cformat exit clean
* fix c file extensions
* decouple CI from pyformat
* remove --ci arg
* make ci happy
* use the environment var instead
* change output to text
* fix log message
* replace tabs
Diffstat (limited to 'lib/python/qmk/cli/pyformat.py')
-rwxr-xr-x | lib/python/qmk/cli/pyformat.py | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/lib/python/qmk/cli/pyformat.py b/lib/python/qmk/cli/pyformat.py index 1464443804..02581f0d85 100755 --- a/lib/python/qmk/cli/pyformat.py +++ b/lib/python/qmk/cli/pyformat.py @@ -5,13 +5,22 @@ from milc import cli import subprocess +@cli.argument('-n', '--dry-run', arg_only=True, action='store_true', help="Flag only, don't automatically format.") @cli.subcommand("Format python code according to QMK's style.", hidden=False if cli.config.user.developer else True) def pyformat(cli): """Format python code according to QMK's style. """ + edit = '--diff' if cli.args.dry_run else '--in-place' + yapf_cmd = ['yapf', '-vv', '--recursive', edit, 'bin/qmk', 'lib/python'] try: - subprocess.run(['yapf', '-vv', '-ri', 'bin/qmk', 'lib/python'], check=True) - cli.log.info('Successfully formatted the python code in `bin/qmk` and `lib/python`.') + cli.run(yapf_cmd, check=True, capture_output=False) + cli.log.info('Python code in `bin/qmk` and `lib/python` is correctly formatted.') + return True except subprocess.CalledProcessError: - cli.log.error('Error formatting python code!') + if cli.args.dry_run: + cli.log.error('Python code in `bin/qmk` and `lib/python` incorrectly formatted!') + else: + cli.log.error('Error formatting python code!') + + return False |