def validate_installed_modules()

in src/SentinelUtilities/SentinelUtils/version_management.py [0:0]


    def validate_installed_modules(self, module_list):
        """ validating installed modules' version """
        module_versions = []
        for mod_info in module_list:
            version = VersionInformation()
            version.name, version.required_version = mod_info.split(">=")
            try:
                pkg_resources.require(mod_info)
                version.requirement_met = True
            except:
                version.requirement_met = False
                try:
                    version.message = str(sys.exc_info()[0].report)
                except:
                    version.message = 'Unknown error'
            finally:
                if 'azure' in version.name and version.message.find("VersionConflict") >= 0:
                    version.requirement_met = True
                elif version.message == '' or version.message.find("DistributionNotFound") < 0:
                    version = self.get_version_information(version, mod_info)

            module_versions.append(version)
        return module_versions