[v3,0/4] Rewrite the image-account-extension in python

Message ID 20230522065531.2300448-1-tobias.schaffner@siemens.com
Headers show
Series Rewrite the image-account-extension in python | expand

Message

Tobias Schaffner May 22, 2023, 6:55 a.m. UTC
From: Tobias Schaffner <tobias.schaffner@siemens.com>

This allows us to drop a lot of encoding and parsing code that was used
to transition to shell and therefore makes it easier to read and maintain.

Using python functions for more complex tasks allows us the usage of
unittests. A very basic infrastructure for unittesting using the build
in python unittest and the bb.parse module was added. This was used to
test the re-implementation of the image-account-extension as a first
showcase.

This is a rebased version of the refactoring part of the "allow creation
of users/groups before rootfs creation" patch series to decouple the
merge of the simplifications.

Changes since v1:
- Fix wrong year in copyright of image-account-extension

Changes since v2:
- Only set system flag if a new group is created and create a unittest
  that proofs that it is not added for existing groups.

Tobias Schaffner (4):
  simplify image-account-extension
  create a minimal python unittest infrastructure
  add unittests for the image-account-extension
  set minimal python version in user_manual to 3.5

 doc/user_manual.md                            |   2 +-
 meta/classes/image-account-extension.bbclass  | 368 ++++++------------
 testsuite/unittests/README.md                 |  28 ++
 testsuite/unittests/bitbake.py                |  37 ++
 testsuite/unittests/rootfs.py                 |  45 +++
 .../unittests/test_image_account_extension.py | 157 ++++++++
 6 files changed, 392 insertions(+), 245 deletions(-)
 create mode 100644 testsuite/unittests/README.md
 create mode 100644 testsuite/unittests/bitbake.py
 create mode 100644 testsuite/unittests/rootfs.py
 create mode 100644 testsuite/unittests/test_image_account_extension.py

Comments

Uladzimir Bely July 6, 2023, 4:32 a.m. UTC | #1
On Mon, 2023-05-22 at 08:55 +0200, T. Schaffner wrote:
> From: Tobias Schaffner <tobias.schaffner@siemens.com>
> 
> This allows us to drop a lot of encoding and parsing code that was
> used
> to transition to shell and therefore makes it easier to read and
> maintain.
> 
> Using python functions for more complex tasks allows us the usage of
> unittests. A very basic infrastructure for unittesting using the
> build
> in python unittest and the bb.parse module was added. This was used
> to
> test the re-implementation of the image-account-extension as a first
> showcase.
> 
> This is a rebased version of the refactoring part of the "allow
> creation
> of users/groups before rootfs creation" patch series to decouple the
> merge of the simplifications.
> 
> Changes since v1:
> - Fix wrong year in copyright of image-account-extension
> 
> Changes since v2:
> - Only set system flag if a new group is created and create a
> unittest
>   that proofs that it is not added for existing groups.
> 
> Tobias Schaffner (4):
>   simplify image-account-extension
>   create a minimal python unittest infrastructure
>   add unittests for the image-account-extension
>   set minimal python version in user_manual to 3.5
> 
>  doc/user_manual.md                            |   2 +-
>  meta/classes/image-account-extension.bbclass  | 368 ++++++----------
> --
>  testsuite/unittests/README.md                 |  28 ++
>  testsuite/unittests/bitbake.py                |  37 ++
>  testsuite/unittests/rootfs.py                 |  45 +++
>  .../unittests/test_image_account_extension.py | 157 ++++++++
>  6 files changed, 392 insertions(+), 245 deletions(-)
>  create mode 100644 testsuite/unittests/README.md
>  create mode 100644 testsuite/unittests/bitbake.py
>  create mode 100644 testsuite/unittests/rootfs.py
>  create mode 100644
> testsuite/unittests/test_image_account_extension.py
> 

Since this passes full and fast CI and there were no any comments to v3
for a long time, we are going to merge the patchset.
Uladzimir Bely July 11, 2023, 6:42 a.m. UTC | #2
On Mon, 2023-05-22 at 08:55 +0200, T. Schaffner wrote:
> From: Tobias Schaffner <tobias.schaffner@siemens.com>
> 
> This allows us to drop a lot of encoding and parsing code that was
> used
> to transition to shell and therefore makes it easier to read and
> maintain.
> 
> Using python functions for more complex tasks allows us the usage of
> unittests. A very basic infrastructure for unittesting using the
> build
> in python unittest and the bb.parse module was added. This was used
> to
> test the re-implementation of the image-account-extension as a first
> showcase.
> 
> This is a rebased version of the refactoring part of the "allow
> creation
> of users/groups before rootfs creation" patch series to decouple the
> merge of the simplifications.
> 
> Changes since v1:
> - Fix wrong year in copyright of image-account-extension
> 
> Changes since v2:
> - Only set system flag if a new group is created and create a
> unittest
>   that proofs that it is not added for existing groups.
> 
> Tobias Schaffner (4):
>   simplify image-account-extension
>   create a minimal python unittest infrastructure
>   add unittests for the image-account-extension
>   set minimal python version in user_manual to 3.5
> 
>  doc/user_manual.md                            |   2 +-
>  meta/classes/image-account-extension.bbclass  | 368 ++++++----------
> --
>  testsuite/unittests/README.md                 |  28 ++
>  testsuite/unittests/bitbake.py                |  37 ++
>  testsuite/unittests/rootfs.py                 |  45 +++
>  .../unittests/test_image_account_extension.py | 157 ++++++++
>  6 files changed, 392 insertions(+), 245 deletions(-)
>  create mode 100644 testsuite/unittests/README.md
>  create mode 100644 testsuite/unittests/bitbake.py
>  create mode 100644 testsuite/unittests/rootfs.py
>  create mode 100644
> testsuite/unittests/test_image_account_extension.py
> 

Applied to next, thanks.