All of lore.kernel.org
 help / color / mirror / Atom feed
From: Yann E. MORIN <yann.morin.1998@free.fr>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH v3 6/7] .gitlab-ci.yml: check flake8
Date: Tue, 13 Mar 2018 19:15:19 +0100	[thread overview]
Message-ID: <20180313181519.GC4317@scaer> (raw)
In-Reply-To: <1520910585-19097-7-git-send-email-ricardo.martincoski@gmail.com>

Ricardo, All,

On 2018-03-13 00:09 -0300, Ricardo Martincoski spake thusly:
> Add a test to check Python code style in the whole buildroot tree.
> 
> Search files by type in order to help flake8 to find the Python scripts
> without .py extension. But don't rely only in the output of 'file' as it
> uses heuristics and sometimes it is wrong (specially identifying Python
> files as C++ source for the 'file' version currently in the Docker
> image).
> 
> Include in the output:
>  - the list of Python files processed;
>  - statistics for each kind of warning;
>  - the total number of warnings;
>  - the number of Python files processed.
> 
> Signed-off-by: Ricardo Martincoski <ricardo.martincoski@gmail.com>
> Cc: Arnout Vandecappelle <arnout@mind.be>
> Cc: Yann E. MORIN <yann.morin.1998@free.fr>
> Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
> ---
> BEFORE APPLYING, see this note from Yann:
> Note: this can only be applied _after_ we regenerate the docker image.
> Then we'll have to update the version of the image at the top of the
> gitlab-ci.yml file.

Indeed, so I've marked this patch as "deferred" in patchwork, so it does
not get accidentally applied.

Also, please consider inverting the order of patch 6 and 7: we need
flake8 to succeeds before enabling the automatic check, so we need to
exclude diffconfig first.

Regards,
Yann E. MORIN.

> Changes v2 -> v3:
>   - manually accepted review tag
> 
> Changes v1 -> v2:  (suggested by Yann E. MORIN)
>   - install flake8 to the base docker image (in the previous patch)
> 
> https://gitlab.com/RicardoMartincoski/buildroot/-/jobs/57046920
> ---
>  .gitlab-ci.yml    | 11 +++++++++++
>  .gitlab-ci.yml.in | 11 +++++++++++
>  2 files changed, 22 insertions(+)
> 
> diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
> index f44c3a9..9ad4c5f 100644
> --- a/.gitlab-ci.yml
> +++ b/.gitlab-ci.yml
> @@ -30,6 +30,17 @@ check-DEVELOPERS:
>      script:
>          - "! utils/get-developers | grep -v 'No action specified'"
>  
> +check-flake8:
> +    before_script:
> +        # Help flake8 to find the Python files without .py extension.
> +        - find * -type f -name '*.py' > files.txt
> +        - find * -type f -print0 | xargs -0 file | grep 'Python script' | cut -d':' -f1 >> files.txt
> +        - sort -u files.txt | tee files.processed
> +    script:
> +        - python -m flake8 --statistics --count $(cat files.processed)
> +    after_script:
> +        - wc -l files.processed
> +
>  check-package:
>      script:
>          - find . -type f \( -name '*.mk' -o -name '*.hash' \) -exec ./utils/check-package {} +
> diff --git a/.gitlab-ci.yml.in b/.gitlab-ci.yml.in
> index cb3eb71..95fc025 100644
> --- a/.gitlab-ci.yml.in
> +++ b/.gitlab-ci.yml.in
> @@ -30,6 +30,17 @@ check-DEVELOPERS:
>      script:
>          - "! utils/get-developers | grep -v 'No action specified'"
>  
> +check-flake8:
> +    before_script:
> +        # Help flake8 to find the Python files without .py extension.
> +        - find * -type f -name '*.py' > files.txt
> +        - find * -type f -print0 | xargs -0 file | grep 'Python script' | cut -d':' -f1 >> files.txt
> +        - sort -u files.txt | tee files.processed
> +    script:
> +        - python -m flake8 --statistics --count $(cat files.processed)
> +    after_script:
> +        - wc -l files.processed
> +
>  check-package:
>      script:
>          - find . -type f \( -name '*.mk' -o -name '*.hash' \) -exec ./utils/check-package {} +
> -- 
> 2.7.4
> 

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'

  reply	other threads:[~2018-03-13 18:15 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-03-13  3:09 [Buildroot] [PATCH v3 0/7] fix Python code style v3 Ricardo Martincoski
2018-03-13  3:09 ` [Buildroot] [PATCH v3 1/7] genrandconfig: fix code style Ricardo Martincoski
2018-03-13 21:27   ` Peter Korsgaard
2018-03-13  3:09 ` [Buildroot] [PATCH v3 2/7] size-stats-compare: " Ricardo Martincoski
2018-03-13 21:27   ` Peter Korsgaard
2018-03-13  3:09 ` [Buildroot] [PATCH v3 3/7] test_python_cryptography: " Ricardo Martincoski
2018-03-13  7:39   ` Yegor Yefremov
2018-03-13 21:32   ` Peter Korsgaard
2018-03-13  3:09 ` [Buildroot] [PATCH v3 4/7] scanpypi: " Ricardo Martincoski
2018-03-13  7:39   ` Yegor Yefremov
2018-03-13 21:32   ` Peter Korsgaard
2018-03-13  3:09 ` [Buildroot] [PATCH v3 5/7] support/dockerfile: install flake8 Ricardo Martincoski
2018-03-13 17:22   ` Yann E. MORIN
2018-03-13 21:37   ` Peter Korsgaard
2018-05-27 16:42   ` Yann E. MORIN
2018-05-28  3:00     ` Ricardo Martincoski
2018-05-28 19:44       ` Yann E. MORIN
2018-05-29  3:43         ` Ricardo Martincoski
2018-05-30 15:36           ` Yann E. MORIN
2018-03-13  3:09 ` [Buildroot] [PATCH v3 6/7] .gitlab-ci.yml: check flake8 Ricardo Martincoski
2018-03-13 18:15   ` Yann E. MORIN [this message]
2018-03-14 23:16     ` Ricardo Martincoski
2018-03-18 16:25       ` Yann E. MORIN
2018-03-30 21:12       ` Yann E. MORIN
2018-03-30 22:38         ` Ricardo Martincoski
2018-03-31 20:49   ` Thomas Petazzoni
2018-03-13  3:09 ` [Buildroot] [PATCH v3 7/7] .flake8: ignore utils/diffconfig Ricardo Martincoski
2018-03-13 21:38   ` Peter Korsgaard

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20180313181519.GC4317@scaer \
    --to=yann.morin.1998@free.fr \
    --cc=buildroot@busybox.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.