Esempio n. 1
0
    def is_app_exists(self, name, app_path) -> bool:
        """
        Check is app exists
        :param name: site name
        :param app_path: virtual path
        """
        ah_write = self.get_iis_object()
        section = ah_write.GetAdminSection("system.applicationHost/sites",
                                           "MACHINE/WEBROOT/APPHOST")
        collection = section.Collection

        for i in range(collection.Count):
            site = collection[i]
            prop = site.Properties
            site_name = prop["name"].Value
            if site_name != name:
                continue
            app_collection = site.Collection
            for ii in range(app_collection.Count):
                app_prop = app_collection[ii].Properties
                if remove_starting_backward_slash(
                        app_prop["path"].Value
                ) == remove_starting_backward_slash(app_path):
                    # found!
                    return True

        return False
Esempio n. 2
0
File: iis.py Progetto: perldev/zoo
    def is_app_exists(self, name, app_path) -> bool:
        """
        Check is app exists
        :param name: site name
        :param app_path: virtual path
        """
        ah_write = self.get_iis_object()
        section = ah_write.GetAdminSection("system.applicationHost/sites", "MACHINE/WEBROOT/APPHOST")
        collection = section.Collection

        for i in range(collection.Count):
            site = collection[i]
            prop = site.Properties
            site_name = prop["name"].Value
            if site_name != name:
                continue
            app_collection = site.Collection
            for ii in range(app_collection.Count):
                app_prop = app_collection[ii].Properties
                if remove_starting_backward_slash(app_prop["path"].Value) == remove_starting_backward_slash(app_path):
                    # found!
                    return True

        return False
Esempio n. 3
0
File: iis.py Progetto: perldev/zoo
    def application_create_from_dict(self, parameters: dict):
        """
        Creates web app from paramters
        """
        # check is exists
        if self.is_app_exists(parameters[KnownParameters.SITE_NAME.value], parameters[KnownParameters.APP_NAME.value]):
            return

        site_name = parameters[KnownParameters.SITE_NAME.value]
        app_virtual_path = parameters[KnownParameters.APP_NAME.value]
        physical_path = parameters.get(KnownParameters.PHYSICAL_PATH.value)
        if not physical_path:
            app_folder = app_virtual_path.replace('/', '\\')
            app_folder = remove_starting_backward_slash(app_folder)
            physical_path = self.create_physical_path_for_virtual_path(os.path.join(site_name, app_folder))

        # use default app pool by default
        pool = parameters.get(KnownParameters.POOL_NAME.value, None)
        self.app_create(site_name, app_virtual_path, physical_path, pool)
Esempio n. 4
0
    def application_create_from_dict(self, parameters: dict):
        """
        Creates web app from paramters
        """
        # check is exists
        if self.is_app_exists(parameters[KnownParameters.SITE_NAME.value],
                              parameters[KnownParameters.APP_NAME.value]):
            return

        site_name = parameters[KnownParameters.SITE_NAME.value]
        app_virtual_path = parameters[KnownParameters.APP_NAME.value]
        physical_path = parameters.get(KnownParameters.PHYSICAL_PATH.value)
        if not physical_path:
            app_folder = app_virtual_path.replace('/', '\\')
            app_folder = remove_starting_backward_slash(app_folder)
            physical_path = self.create_physical_path_for_virtual_path(
                os.path.join(site_name, app_folder))

        # use default app pool by default
        pool = parameters.get(KnownParameters.POOL_NAME.value, None)
        self.app_create(site_name, app_virtual_path, physical_path, pool)