diff --git a/src/python/jw/pkg/lib/ExecContext.py b/src/python/jw/pkg/lib/ExecContext.py index 5441d8c9..4aab01fe 100644 --- a/src/python/jw/pkg/lib/ExecContext.py +++ b/src/python/jw/pkg/lib/ExecContext.py @@ -236,6 +236,10 @@ class ExecContext(Base): raise e return result + @classmethod + def __mode_str(cls, mode: int) -> str: + return f'{mode:0o}' + def __init__(self, uri: str, interactive: bool|None=None, verbose_default=False): super().__init__(uri=uri, interactive=interactive, verbose_default=verbose_default) @@ -580,4 +584,4 @@ class ExecContext(Base): await self.run(['chown', ownership, path], cmd_input=InputMode.NonInteractive) async def _chmod(self, path: str, mode: int) -> None: - await self.run(['chmod', oct(mode), path], cmd_input=InputMode.NonInteractive) + await self.run(['chmod', self.__mode_str(mode), path], cmd_input=InputMode.NonInteractive)