private function filterBundleList(array $bundleList)
    {
        $groups = [];
        foreach ($_ENV as $name => $val) {
            if (substr($name, 0, strlen($this->envDynGroupPrefix)) == $this->envDynGroupPrefix) {
                $groups[substr($name, strlen($this->envDynGroupPrefix))] = $val;
            }
        }

        if (empty($groups)) {
            // no groups.. exit
            return $bundleList;
        }

        foreach ($groups as $groupName => $filter) {
            if (isset($_ENV[$this->envDynSettingPrefix.$groupName]) &&
                $_ENV[$this->envDynSettingPrefix.$groupName] == 'false'
            ) {
                $bundleList = array_filter(
                    $bundleList,
                    function ($value) use ($filter) {
                        if (preg_match('/'.$filter.'/i', $value) || empty(trim($value))) {
                            return false;
                        }
                        return true;
                    }
                );
            }
        }

        return $bundleList;
    }