[OE-core] [PATCH 5/5] oeqa/runtime/cases/rpm.py: workaround race condition

Burton, Ross ross.burton at intel.com
Wed Jul 11 10:01:54 UTC 2018


Can we integrate the systemd fix, instead of working around it?

Ross

On 11 July 2018 at 09:05, Chen Qi <Qi.Chen at windriver.com> wrote:
> With the recent change in new systemd version, it's possible that
> a user is deleted before stopping user-runtime-dir at xxx.service.
> See link below.
>
>   https://github.com/systemd/systemd/issues/9541
>
> Workaround this issue by delay for 1 second before deleting user.
>
> Signed-off-by: Chen Qi <Qi.Chen at windriver.com>
> ---
>  meta/lib/oeqa/runtime/cases/rpm.py | 6 ++++++
>  1 file changed, 6 insertions(+)
>
> diff --git a/meta/lib/oeqa/runtime/cases/rpm.py b/meta/lib/oeqa/runtime/cases/rpm.py
> index 1e5e463..2f9dcad 100644
> --- a/meta/lib/oeqa/runtime/cases/rpm.py
> +++ b/meta/lib/oeqa/runtime/cases/rpm.py
> @@ -87,6 +87,12 @@ class RpmInstallRemoveTest(OERuntimeTestCase):
>              self.assertEqual(status, 0, msg=msg)
>
>          def unset_up_test_user(u):
> +            # Due to recent change in systemd, we need to sleep for a while
> +            # to avoid unexpected failure of user-runtime-dir at 1000.service
> +            # See https://github.com/systemd/systemd/issues/9541
> +            if self.tc.td.get('VIRTUAL-RUNTIME_init_manager') == 'systemd':
> +                self.target.run('sleep 1')
> +
>              status, output = self.target.run('userdel -r %s' % u)
>              msg = 'Failed to erase user: %s' % output
>              self.assertTrue(status == 0, msg=msg)
> --
> 1.9.1
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core



More information about the Openembedded-core mailing list