actions: fix filtering for clang action

Do not invoke --integration when dealing with one platform only and
generate testplan only for the needed platforms.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
diff --git a/scripts/ci/test_plan.py b/scripts/ci/test_plan.py
index 21c611f..217782b 100755
--- a/scripts/ci/test_plan.py
+++ b/scripts/ci/test_plan.py
@@ -96,7 +96,8 @@
         self.find_tags()
         self.find_excludes()
         self.find_tests()
-        self.find_archs()
+        if not self.platforms:
+            self.find_archs()
         self.find_boards()
 
     def get_plan(self, options, integration=False):
@@ -105,6 +106,7 @@
         if integration:
             cmd.append("--integration")
 
+        logging.info(" ".join(cmd))
         _ = subprocess.call(cmd)
         with open(fname, newline='') as csvfile:
             csv_reader = csv.reader(csvfile, delimiter=',')
@@ -138,7 +140,13 @@
 
         if _options:
             logging.info(f'Potential architecture filters...')
-            self.get_plan(_options, True)
+            if self.platforms:
+                for platform in self.platforms:
+                    _options.extend(["-p", platform])
+
+                self.get_plan(_options, True)
+            else:
+                self.get_plan(_options, False)
 
     def find_boards(self):
         boards = set()
@@ -255,8 +263,11 @@
                 for platform in self.platforms:
                     _options.extend(["-p", platform])
 
-            _options.extend(self.tag_options)
-            self.get_plan(_options, True)
+                _options.extend(self.tag_options)
+                self.get_plan(_options)
+            else:
+                _options.extend(self.tag_options)
+                self.get_plan(_options, True)
         else:
             logging.info(f'No twister needed or partial twister run only...')