diff --git a/build_helper/build_helper_configs.py b/build_helper/build_helper_configs.py
index 549af08..c27d219 100755
--- a/build_helper/build_helper_configs.py
+++ b/build_helper/build_helper_configs.py
@@ -425,44 +425,6 @@
                ]
                }
 
-config_full_gnuarm = {"seed_params": {
-               "tfm_platform":     ["mps2/an521", "mps2/an519",
-                                    "musca_a", "musca_b1",
-                                    "mps3/an524", "mps2/an539",
-                                    "cypress/psoc64"],
-               "toolchain_file":   ["toolchain_GNUARM.cmake"],
-               "psa_api":          [True, False],
-               "isolation_level":  ["1", "2"],
-               "test_regression":  [True, False],
-               "test_psa_api":     ["OFF"],
-               "cmake_build_type": ["Debug", "Release", "RelWithDebInfo"],
-               "with_otp":         ["off"],
-               "with_bl2":         [True, False],
-               "with_ns":          [True, False],
-               "profile":          [""],
-               "partition_ps":     ["ON"],
-               },
-               "common_params": _common_tfm_builder_cfg,
-               "invalid": _common_tfm_invalid_configs + [
-                   ("cypress/psoc64", "*", "*", "*",
-                    "*", "*", "Debug",  "*", "*", "*", "*", "*"),
-                   ("cypress/psoc64", "*", "*", "*",
-                    "*", "*", "*",  "*", True, True, "*", "*"),
-                   ("mps2/an521", "*", "*", "*",
-                    "*", "*", "RelWithDebInfo",  "*", "*", "*", "*", "*"),
-                   ("mps2/an519", "*", "*", "*",
-                    "*", "*", "RelWithDebInfo",  "*", "*", "*", "*", "*"),
-                   ("musca_a", "*", "*", "*",
-                    "*", "*", "RelWithDebInfo",  "*", "*", "*", "*", "*"),
-                   ("musca_b1", "*", "*", "*",
-                    "*", "*", "RelWithDebInfo",  "*", "*", "*", "*", "*"),
-                   ("mps2/an539", "*", "*", "*",
-                    "*", "*", "RelWithDebInfo",  "*", "*", "*", "*", "*"),
-                   ("mps3/an524", "*", "*", "*",
-                    "*", "*", "RelWithDebInfo",  "*", "*", "*", "*", "*"),
-               ]
-               }
-
 config_tfm_test = {"seed_params": {
                 "tfm_platform":     ["mps2/an521", "musca_a",
                                      "musca_b1", "musca_s1"],
@@ -954,33 +916,6 @@
                 ]
                 }
 
-# Configuration used in CI if armclang not available
-config_ci_gnuarm = {"seed_params": {
-                "tfm_platform":     ["mps2/an521"],
-                "toolchain_file":   ["toolchain_ARMCLANG.cmake",
-                                     "toolchain_GNUARM.cmake"],
-                "psa_api":          [True, False],
-                "isolation_level":  ["1", "2"],
-                "test_regression":  [True, False],
-                "test_psa_api":     ["OFF"],
-                "cmake_build_type": ["Release"],
-                "with_otp":         ["off"],
-                "with_bl2":         [True, False],
-                "with_ns":          [True],
-                "profile":          [""],
-                "partition_ps":     ["ON"],
-                },
-                "common_params": _common_tfm_builder_cfg,
-                "invalid": _common_tfm_invalid_configs + [
-                    ("*", "toolchain_ARMCLANG.cmake", True, "*", "*", "*",
-                     "*",  "*", "*", "*", "*", "*"),
-                    ("*", "toolchain_ARMCLANG.cmake", False, "1", "*", "*",
-                     "*",  "*", "False", "*", "*", "*"),
-                    ("*", "toolchain_ARMCLANG.cmake", "*", "*", "*", "*",
-                     "*",  "*", "*", "*", "*", "*") # Disable ARMCLANG for now
-                ]
-                }
-
 config_lava_debug = {"seed_params": {
                 "tfm_platform":     ["mps2/an521", "mps2/an519"],
                 "toolchain_file":   ["toolchain_GNUARM.cmake"],
@@ -1002,416 +937,6 @@
                 ]
                 }
 
-#GNU groups for external CI only
-# Configure build manager to build the maximum number of configurations
-config_tfm_test_gnu = {"seed_params": {
-                "tfm_platform":     ["mps2/an521", "musca_a",
-                                     "musca_b1", "musca_s1"],
-                "toolchain_file":   ["toolchain_GNUARM.cmake"],
-                "psa_api":          [True, False],
-                "isolation_level":  ["1", "2"],
-                "test_regression":  [True, False],
-                "test_psa_api":     ["OFF"],
-                "cmake_build_type": ["Debug", "Release", "Minsizerel"],
-                "with_otp":         ["off"],
-                "with_bl2":         [True],
-                "with_ns":          [True],
-                "profile":          [""],
-                "partition_ps":     ["ON"],
-                },
-                "common_params": _common_tfm_builder_cfg,
-                "invalid": _common_tfm_invalid_configs + [
-                    ("musca_a", "*", "*",
-                     "*", "*", "*", "*", "*", False, "*", "*", "*"),
-                    ("musca_b1", "*", "*",
-                     "*", "*", "*", "*", "*", False, "*", "*", "*"),
-                    ("musca_s1", "*", "*",
-                     "*", "*", "*", "*", "*", False, "*", "*", "*"),
-                ]
-                }
-
-# Configure build manager to build the maximum number of configurations
-config_tfm_test2_gnu = {"seed_params": {
-                "tfm_platform":     ["mps2/an519", "mps3/an524",
-                                     "mps2/an539", "mps2/sse-200_aws"],
-                "toolchain_file":   ["toolchain_GNUARM.cmake"],
-                "psa_api":          [True, False],
-                "isolation_level":  ["1", "2"],
-                "test_regression":  [True, False],
-                "test_psa_api":     ["OFF"],
-                "cmake_build_type": ["Debug", "Release", "Minsizerel"],
-                "with_otp":         ["off"],
-                "with_bl2":         [True],
-                "with_ns":          [True],
-                "profile":          [""],
-                "partition_ps":     ["ON"],
-                },
-                "common_params": _common_tfm_builder_cfg,
-                "invalid": _common_tfm_invalid_configs + [
-                    ("mps2/an519", "toolchain_GNUARM.cmake", "*",
-                     "*", "*", "*", "Minsizerel", "*", "*", "*", "*", "*"),
-                ]
-                }
-
-# Configure build manager to build the maximum number of configurations
-config_tfm_profile_gnu = {"seed_params": {
-                "tfm_platform":     ["mps2/an519", "mps2/an521",
-                                     "musca_b1"],
-                "toolchain_file":   ["toolchain_GNUARM.cmake"],
-                "psa_api":          [True, False],
-                "isolation_level":  ["1", "2"],
-                "test_regression":  [True, False],
-                "test_psa_api":     ["OFF"],
-                "cmake_build_type": ["Debug", "Release", "Minsizerel"],
-                "with_otp":         ["off"],
-                "with_bl2":         [True],
-                "with_ns":          [True],
-                "profile":          ["profile_small", "profile_medium"],
-                "partition_ps":     ["ON", "OFF"],
-                },
-                "common_params": _common_tfm_builder_cfg,
-                "invalid": _common_tfm_invalid_configs + [
-                    ("mps2/an519", "toolchain_GNUARM.cmake", "*",
-                     "*", "*", "*", "Minsizerel", "*", "*", "*", "*", "*"),
-                ]
-                }
-
-# Configure build manager to build the maximum number of configurations
-config_tfm_test_OTP_gnu = {"seed_params": {
-                "tfm_platform":     ["musca_b1"],
-                "toolchain_file":   ["toolchain_GNUARM.cmake"],
-                "psa_api":          [True, False],
-                "isolation_level":  ["1", "2"],
-                "test_regression":  [True, False],
-                "test_psa_api":     ["OFF"],
-                "cmake_build_type": ["Debug", "Release", "Minsizerel"],
-                "with_otp":         ["ENABLED"],
-                "with_bl2":         [True],
-                "with_ns":          [True],
-                "profile":          [""],
-                "partition_ps":     ["ON"],
-                },
-                "common_params": _common_tfm_builder_cfg,
-                "invalid": _common_tfm_invalid_configs + []
-                }
-
-# Configure build manager to build several combinations
-config_PSA_API_gnu = {"seed_params": {
-                "tfm_platform":     ["mps2/an521", "musca_b1"],
-                "toolchain_file":   ["toolchain_GNUARM.cmake"],
-                "psa_api":          [True, False],
-                "isolation_level":  ["1", "2"],
-                "test_regression":  [False],
-                "test_psa_api":     ["CRYPTO",
-                                     "PROTECTED_STORAGE",
-                                     "INITIAL_ATTESTATION",
-                                     "INTERNAL_TRUSTED_STORAGE"],
-                "cmake_build_type": ["Debug", "Release", "Minsizerel"],
-                "with_otp":         ["off"],
-                "with_bl2":         [True],
-                "with_ns":          [True],
-                "profile":          [""],
-                "partition_ps":     ["ON"],
-                },
-                "common_params": _common_tfm_builder_cfg,
-                "invalid": _common_tfm_invalid_configs + []
-                }
-
-# Configure build manager to build several combinations
-config_PSA_FF_gnu = {"seed_params": {
-                "tfm_platform":     ["mps2/an521", "musca_b1"],
-                "toolchain_file":   ["toolchain_GNUARM.cmake"],
-                "psa_api":          [True],
-                "isolation_level":  ["1", "2"],
-                "test_regression":  [False],
-                "test_psa_api":     ["IPC"],
-                "cmake_build_type": ["Debug", "Release", "Minsizerel"],
-                "with_otp":         ["off"],
-                "with_bl2":         [True],
-                "with_ns":          [True],
-                "profile":          [""],
-                "partition_ps":     ["ON"],
-                },
-                "common_params": _common_tfm_builder_cfg,
-                "invalid": _common_tfm_invalid_configs + []
-                }
-
-# Configure build manager to build several combinations
-config_PSA_API_OTP_gnu = {"seed_params": {
-                "tfm_platform":     ["musca_b1"],
-                "toolchain_file":   ["toolchain_GNUARM.cmake"],
-                "psa_api":          [True, False],
-                "isolation_level":  ["1", "2"],
-                "test_regression":  [False],
-                "test_psa_api":     ["CRYPTO",
-                                     "PROTECTED_STORAGE",
-                                     "INITIAL_ATTESTATION",
-                                     "INTERNAL_TRUSTED_STORAGE"],
-                "cmake_build_type": ["Debug", "Release", "Minsizerel"],
-                "with_otp":         ["ENABLED"],
-                "with_bl2":         [True],
-                "with_ns":          [True],
-                "profile":          [""],
-                "partition_ps":     ["ON"],
-                },
-                "common_params": _common_tfm_builder_cfg,
-                "invalid": _common_tfm_invalid_configs + []
-                }
-
-# Configure build manager to build several combinations
-config_PSA_FF_OTP_gnu = {"seed_params": {
-                "tfm_platform":     ["musca_b1"],
-                "toolchain_file":   ["toolchain_GNUARM.cmake"],
-                "psa_api":          [True],
-                "isolation_level":  ["1", "2"],
-                "test_regression":  [False],
-                "test_psa_api":     ["IPC"],
-                "cmake_build_type": ["Debug", "Release", "Minsizerel"],
-                "with_otp":         ["ENABLED"],
-                "with_bl2":         [True],
-                "with_ns":          [True],
-                "profile":          [""],
-                "partition_ps":     ["ON"],
-                },
-                "common_params": _common_tfm_builder_cfg,
-                "invalid": _common_tfm_invalid_configs + []
-                }
-
-# Configure build manager to build several combinations
-config_PSOC64_gnu = {"seed_params": {
-                "tfm_platform":     ["cypress/psoc64"],
-                "toolchain_file":   ["toolchain_GNUARM.cmake"],
-                "psa_api":          [True],
-                "isolation_level":  ["1", "2"],
-                "test_regression":  [True],
-                "test_psa_api":     ["OFF"],
-                "cmake_build_type": ["Release"],
-                "with_otp":         ["off"],
-                "with_bl2":         [False],
-                "with_ns":          [True, False],
-                "profile":          [""],
-                "partition_ps":     ["ON"],
-                },
-                "common_params": _common_tfm_builder_cfg,
-                "invalid": _common_tfm_invalid_configs + []
-                }
-
-# Configure build manager to build the maximum number of configurations
-config_nightly_gnu = {"seed_params": {
-               "tfm_platform":      ["mps2/an521", "mps2/an519",
-                                     "musca_a", "musca_b1", "musca_s1",
-                                     "mps3/an524", "mps2/an539",
-                                     "mps2/sse-200_aws", "cypress/psoc64"],
-                "toolchain_file":   ["toolchain_GNUARM.cmake"],
-                "psa_api":          [True, False],
-                "isolation_level":  ["1", "2", "3"],
-                "test_regression":  [True, False],
-                "test_psa_api":     ["OFF"],
-                "cmake_build_type": ["Debug", "Release", "Minsizerel", "RelWithDebInfo"],
-                "with_otp":         ["off"],
-                "with_bl2":         [True],
-                "with_ns":          [True],
-                "profile":          [""],
-                "partition_ps":     ["ON"],
-                },
-                "common_params": _common_tfm_builder_cfg,
-                "invalid": _common_tfm_invalid_configs + [
-                    ("mps2/an519", "toolchain_GNUARM.cmake", "*",
-                     "*", "*", "*", "Minsizerel", "*", "*", "*", "*", "*"),
-                    ("cypress/psoc64", "*", "*", "*",
-                     "*", "*", "Debug",  "*", "*", "*", "*", "*"),
-                    ("cypress/psoc64", "*", "*", "*",
-                     "*", "*", "*",  "*", True, True, "*", "*"),
-                    ("mps2/an521", "*", "*", "*",
-                    "*", "*", "RelWithDebInfo",  "*", "*", "*", "*", "*"),
-                    ("mps2/an519", "*", "*", "*",
-                     "*", "*", "RelWithDebInfo",  "*", "*", "*", "*", "*"),
-                    ("musca_a", "*", "*", "*",
-                     "*", "*", "RelWithDebInfo",  "*", "*", "*", "*", "*"),
-                    ("musca_b1", "*", "*", "*",
-                     "*", "*", "RelWithDebInfo",  "*", "*", "*", "*", "*"),
-                    ("musca_s1", "*", "*", "*",
-                     "*", "*", "RelWithDebInfo",  "*", "*", "*", "*", "*"),
-                    ("mps2/an539", "*", "*", "*",
-                     "*", "*", "RelWithDebInfo",  "*", "*", "*", "*", "*"),
-                    ("mps3/an524", "*", "*", "*",
-                     "*", "*", "RelWithDebInfo",  "*", "*", "*", "*", "*"),
-                    ("mps2/sse-200_aws", "*", "*", "*",
-                     "*", "*", "RelWithDebInfo",  "*", "*", "*", "*", "*"),
-                ]
-                }
-
-# Configure build manager to build the maximum number of configurations
-config_nightly_profile_gnu = {"seed_params": {
-                "tfm_platform":     ["mps2/an519", "mps2/an521",
-                                     "musca_b1"],
-                "toolchain_file":   ["toolchain_GNUARM.cmake"],
-                "psa_api":          [True, False],
-                "isolation_level":  ["1", "2", "3"],
-                "test_regression":  [True, False],
-                "test_psa_api":     ["OFF"],
-                "cmake_build_type": ["Debug", "Release", "Minsizerel"],
-                "with_otp":         ["off"],
-                "with_bl2":         [True],
-                "with_ns":          [True],
-                "profile":          ["profile_small", "profile_medium"],
-                "partition_ps":     ["ON", "OFF"],
-                },
-                "common_params": _common_tfm_builder_cfg,
-                "invalid": _common_tfm_invalid_configs + [
-                    ("mps2/an519", "toolchain_GNUARM.cmake", "*",
-                     "*", "*", "*", "Minsizerel", "*", "*", "*", "*", "*"),
-                ]
-                }
-
-# Configure build manager to build several combinations
-config_nightly_PSA_API_gnu = {"seed_params": {
-                "tfm_platform":     ["mps2/an521"],
-                "toolchain_file":   ["toolchain_GNUARM.cmake"],
-                "psa_api":          [True, False],
-                "isolation_level":  ["1", "2", "3"],
-                "test_regression":  [False],
-                "test_psa_api":     ["CRYPTO",
-                                     "PROTECTED_STORAGE",
-                                     "INITIAL_ATTESTATION",
-                                     "INTERNAL_TRUSTED_STORAGE"],
-                "cmake_build_type": ["Debug", "Release"],
-                "with_otp":         ["off"],
-                "with_bl2":         [True],
-                "with_ns":          [True],
-                "profile":          [""],
-                "partition_ps":     ["ON"],
-                },
-                "common_params": _common_tfm_builder_cfg,
-                "invalid": _common_tfm_invalid_configs + []
-                }
-
-# Configure build manager to build several combinations
-config_nightly_PSA_FF_gnu = {"seed_params": {
-                "tfm_platform":     ["mps2/an521"],
-                "toolchain_file":   ["toolchain_GNUARM.cmake"],
-                "psa_api":          [True],
-                "isolation_level":  ["1", "2", "3"],
-                "test_regression":  [False],
-                "test_psa_api":     ["IPC"],
-                "cmake_build_type": ["Debug", "Release"],
-                "with_otp":         ["off"],
-                "with_bl2":         [True],
-                "with_ns":          [True],
-                "profile":          [""],
-                "partition_ps":     ["ON"],
-                },
-                "common_params": _common_tfm_builder_cfg,
-                "invalid": _common_tfm_invalid_configs + []
-                }
-
-# Configure build manager to build the maximum number of configurations
-config_nightly_OTP_gnu = {"seed_params": {
-                "tfm_platform":     ["musca_b1"],
-                "toolchain_file":   ["toolchain_GNUARM.cmake"],
-                "psa_api":          [True, False],
-                "isolation_level":  ["1", "2", "3"],
-                "test_regression":  [True],
-                "test_psa_api":     ["OFF"],
-                "cmake_build_type": ["Debug", "Release"],
-                "with_otp":         ["ENABLED"],
-                "with_bl2":         [True],
-                "with_ns":          [True],
-                "profile":          [""],
-                "partition_ps":     ["ON"],
-                },
-                "common_params": _common_tfm_builder_cfg,
-                "invalid": _common_tfm_invalid_configs + []
-                }
-
-# Configure build manager to build the maximum number of configurations
-config_pp_test_gnu = {"seed_params": {
-                "tfm_platform":     ["mps2/an521", "mps2/an519",
-                                     "musca_b1"],
-                "toolchain_file":   ["toolchain_GNUARM.cmake"],
-                "psa_api":          [True, False],
-                "isolation_level":  ["1", "2"],
-                "test_regression":  [True],
-                "test_psa_api":     ["OFF"],
-                "cmake_build_type": ["Release"],
-                "with_otp":         ["off"],
-                "with_bl2":         [True],
-                "with_ns":          [True, False],
-                "profile":          ["", "profile_small"],
-                "partition_ps":     ["ON"],
-                },
-                "common_params": _common_tfm_builder_cfg,
-                "invalid": _common_tfm_invalid_configs + [
-                    ("musca_b1", "*", "*", "*", "*", "*",
-                     "*",  "*", "*", "*", "profile_small", "*"),
-                    ("*", "*", True, "*", "*", "*",
-                     "*",  "*", "*", "*", "profile_small", "*"),
-                    ("*", "*", "*", "2", "*", "*",
-                     "*",  "*", "*", "*", "profile_small", "*"),
-                ]
-                }
-
-# Configure build manager to build the maximum number of configurations
-config_pp_OTP_gnu = {"seed_params": {
-                "tfm_platform":     ["musca_b1"],
-                "toolchain_file":   ["toolchain_GNUARM.cmake"],
-                "psa_api":          [True, False],
-                "isolation_level":  ["1", "2"],
-                "test_regression":  [True],
-                "test_psa_api":     ["OFF"],
-                "cmake_build_type": ["Release"],
-                "with_otp":         ["ENABLED"],
-                "with_bl2":         [True],
-                "with_ns":          [True, False],
-                "profile":          [""],
-                "partition_ps":     ["ON"],
-                },
-                "common_params": _common_tfm_builder_cfg,
-                "invalid": _common_tfm_invalid_configs + []
-                }
-
-# Configure build manager to build several combinations
-config_pp_PSA_API_gnu = {"seed_params": {
-                "tfm_platform":     ["mps2/an521"],
-                "toolchain_file":   ["toolchain_GNUARM.cmake"],
-                "psa_api":          [True],
-                "isolation_level":  ["2"],
-                "test_regression":  [False],
-                "test_psa_api":     ["IPC",
-                                     "CRYPTO",
-                                     "PROTECTED_STORAGE",
-                                     "INITIAL_ATTESTATION",
-                                     "INTERNAL_TRUSTED_STORAGE"],
-                "cmake_build_type": ["Release"],
-                "with_otp":         ["off"],
-                "with_bl2":         [True],
-                "with_ns":          [True, False],
-                "profile":          [""],
-                "partition_ps":     ["ON"],
-                },
-                "common_params": _common_tfm_builder_cfg,
-                "invalid": _common_tfm_invalid_configs + []
-                }
-
-# Configure build manager to build several combinations
-config_pp_PSoC64_gnu = {"seed_params": {
-                "tfm_platform":     ["cypress/psoc64"],
-                "toolchain_file":   ["toolchain_GNUARM.cmake"],
-                "psa_api":          [True],
-                "isolation_level":  ["1", "2"],
-                "test_regression":  [True],
-                "test_psa_api":     ["OFF"],
-                "cmake_build_type": ["Release"],
-                "with_otp":         ["off"],
-                "with_bl2":         [False],
-                "with_ns":          [True, False],
-                "profile":          [""],
-                "partition_ps":     ["ON"],
-                },
-                "common_params": _common_tfm_builder_cfg,
-                "invalid": _common_tfm_invalid_configs + []
-                }
-
 _builtin_configs = {
                     #release test group
                     "tfm_test": config_tfm_test,
@@ -1437,33 +962,6 @@
                     "pp_PSA_API": config_pp_PSA_API,
                     "pp_psoc64": config_pp_PSoC64,
 
-                    #GNU only configs against groups above
-                    #The combinations should be the same except the CLANG ones
-                    #release test group (GNU)
-                    "tfm_test_gnu": config_tfm_test_gnu,
-                    "tfm_test2_gnu": config_tfm_test2_gnu,
-                    "tfm_profile_gnu": config_tfm_profile_gnu,
-                    "tfm_test_otp_gnu": config_tfm_test_OTP_gnu,
-                    "psa_api_gnu": config_PSA_API_gnu,
-                    "psa_api_otp_gnu": config_PSA_API_OTP_gnu,
-                    "psa_ff_gnu": config_PSA_FF_gnu,
-                    "psa_ff_otp_gnu": config_PSA_FF_OTP_gnu,
-                    "tfm_psoc64_gnu": config_PSOC64_gnu,
-
-                    #nightly test group (GNU)
-                    "nightly_test_gnu": config_nightly_gnu,
-                    "nightly_profile_gnu": config_nightly_profile_gnu,
-                    "nightly_psa_api_gnu": config_nightly_PSA_API_gnu,
-                    "nightly_ff_gnu": config_nightly_PSA_FF_gnu,
-                    "nightly_otp_gnu": config_nightly_OTP_gnu,
-
-                    #per patch test group (GNU)
-                    "pp_test_gnu": config_pp_test_gnu,
-                    "pp_OTP_gnu": config_pp_OTP_gnu,
-                    "pp_PSA_API_gnu": config_pp_PSA_API_gnu,
-                    "pp_psoc64_gnu": config_pp_PSoC64_gnu,
-
-
                     #full test group in the old CI
                     "full": config_full,
 
@@ -1485,10 +983,8 @@
                     "debug": config_debug,
 
                     #DevOps team test group
-                    "full_gnuarm": config_full_gnuarm,
                     "lava_debug": config_lava_debug,
-                    "ci": config_ci,
-                    "ci_gnuarm": config_ci_gnuarm}
+                    "ci": config_ci}
 
 if __name__ == '__main__':
     import os
