Просмотр исходного кода

fix(validation): address review feedback

xcad 1 день назад
Родитель
Сommit
78b2df45b1

+ 16 - 14
cli/core/validation/kind_validators.py

@@ -218,22 +218,24 @@ class AnsibleValidator(RenderedFilesValidator):
             return result
             return result
 
 
         env = os.environ.copy()
         env = os.environ.copy()
-        env["ANSIBLE_LOCAL_TEMP"] = tempfile.mkdtemp(prefix="ansible-local-")
         env["ANSIBLE_REMOTE_TEMP"] = "/tmp/.ansible-${USER}/tmp"
         env["ANSIBLE_REMOTE_TEMP"] = "/tmp/.ansible-${USER}/tmp"
 
 
-        for playbook in playbooks:
-            process = self.run_command(
-                ["ansible-playbook", "--syntax-check", str(playbook.relative_to(workdir))],
-                workdir,
-                env=env,
-            )
-            failure = self.failure_from_process(process, str(playbook.relative_to(workdir)))
-            if failure is not None:
-                if self._is_dependency_resolution_failure(failure.message):
-                    result.skipped = True
-                    result.warnings.append(failure.message)
-                    continue
-                result.failures.append(failure)
+        with tempfile.TemporaryDirectory(prefix="ansible-local-") as ansible_local_temp:
+            env["ANSIBLE_LOCAL_TEMP"] = ansible_local_temp
+
+            for playbook in playbooks:
+                process = self.run_command(
+                    ["ansible-playbook", "--syntax-check", str(playbook.relative_to(workdir))],
+                    workdir,
+                    env=env,
+                )
+                failure = self.failure_from_process(process, str(playbook.relative_to(workdir)))
+                if failure is not None:
+                    if self._is_dependency_resolution_failure(failure.message):
+                        result.skipped = True
+                        result.warnings.append(failure.message)
+                        continue
+                    result.failures.append(failure)
         return result
         return result
 
 
     @staticmethod
     @staticmethod

+ 3 - 1
cli/modules/compose/__init__.py

@@ -1,5 +1,7 @@
 """Docker Compose module."""
 """Docker Compose module."""
 
 
+from __future__ import annotations
+
 import logging
 import logging
 from typing import Annotated
 from typing import Annotated
 
 
@@ -68,7 +70,7 @@ class ComposeModule(Module):
             bool,
             bool,
             Option(
             Option(
                 "--docker-test-all",
                 "--docker-test-all",
-                help="Alias for --matrix --kind Docker Compose validation. Requires --docker.",
+                help="Alias for --matrix --kind Docker Compose validation",
             ),
             ),
         ] = False,
         ] = False,
     ) -> None:
     ) -> None:

+ 2 - 0
cli/modules/compose/validate.py

@@ -1,5 +1,7 @@
 """Docker Compose validation functionality."""
 """Docker Compose validation functionality."""
 
 
+from __future__ import annotations
+
 import logging
 import logging
 import shutil
 import shutil
 import subprocess
 import subprocess

+ 3 - 1
cli/modules/swarm/__init__.py

@@ -1,5 +1,7 @@
 """Docker Swarm module with compose-compatible validation."""
 """Docker Swarm module with compose-compatible validation."""
 
 
+from __future__ import annotations
+
 import logging
 import logging
 from typing import Annotated
 from typing import Annotated
 
 
@@ -68,7 +70,7 @@ class SwarmModule(Module):
             bool,
             bool,
             Option(
             Option(
                 "--docker-test-all",
                 "--docker-test-all",
-                help="Alias for --matrix --kind Docker Compose validation. Requires --docker.",
+                help="Alias for --matrix --kind Docker Compose validation",
             ),
             ),
         ] = False,
         ] = False,
     ) -> None:
     ) -> None: