Пример #1
0
    def package_import(self, pack: str):
        """
        Import opsi package file into development folder and open it, if successful

        :param pack: package file path
        """
        self.logger.debug("Importing package")

        if self._active_project:
            if not self.project_close():
                return

            self.reset_state()

        # extract product id from package path
        file = Helper.get_file_from_path(pack)
        product = file[:file.rfind(
            "_"
        )]  # remove everything behind product name (version, file extension, etc.)
        project = Helper.concat_path_native(ConfigHandler.cfg.dev_dir, product)

        # import
        try:
            self.startup.hide_me()
            self.do_import(pack)
        except:
            self.logger.error("Package import unsuccessful!")
        else:
            # open
            try:
                self.project_load(project)
            except:
                self.logger.err("Imported package could not be opened!")
Пример #2
0
    def package_import(self, pack: str):
        """
        Import opsi package file into development folder and open it, if successful

        :param pack: package file path
        """
        self.logger.debug("Importing package")

        if self._active_project:
            if not self.project_close():
                return

            self.reset_state()

        # extract product id from package path
        file = Helper.get_file_from_path(pack)
        product = file[:file.rfind("_")]  # remove everything behind product name (version, file extension, etc.)
        project = Helper.concat_path_native(ConfigHandler.cfg.dev_dir, product)

        # import
        try:
            self.startup.hide_me()
            self.do_import(pack)
        except:
            self.logger.error("Package import unsuccessful!")
        else:
            # open
            try:
                self.project_load(project)
            except:
                self.logger.err("Imported package could not be opened!")
Пример #3
0
    def set_selected_script(self, script, script_type):
        """
        Receives select signal from window button, writes filename to model
        and emits itemChanged signal

        :param script: full pathname to script
        :param script_type: type of script
        """
        self.logger.debug("Set selected script: (" + script + ") (" +
                          script_type + ")")
        if script_type == "setup":
            self.model_fields.item(0, 10).setText(
                Helper.get_file_from_path(script))
        if script_type == "uninstall":
            self.model_fields.item(0, 11).setText(
                Helper.get_file_from_path(script))
        if script_type == "update":
            self.model_fields.item(0, 12).setText(
                Helper.get_file_from_path(script))
        if script_type == "always":
            self.model_fields.item(0, 13).setText(
                Helper.get_file_from_path(script))
        if script_type == "once":
            self.model_fields.item(0, 14).setText(
                Helper.get_file_from_path(script))
        if script_type == "custom":
            self.model_fields.item(0, 15).setText(
                Helper.get_file_from_path(script))
        if script_type == "userlogin":
            self.model_fields.item(0, 16).setText(
                Helper.get_file_from_path(script))
Пример #4
0
    def get_msiproductcode(self):
        """Show MSI product code of individual MSI file"""
        self.logger.debug("Show MSI product code " + platform.system())
        if platform.system() in ["Windows"]:

            ext = "MSI Package (*.msi)"

            msi = QFileDialog.getOpenFileName(self, translate("MainWindow", "Choose package file"),
                                                "", ext)

            if not msi == ("", ""):
                self.logger.debug("Selected package: " + msi[0])
                prodcode = Helper.get_msi_property(msi[0])
                self._parent.msgbox(translate("MainWindow", "Selected MSI: " + Helper.get_file_from_path(msi[0]) + "\n\n" + "Product Code: " + " " + prodcode), oPB.MsgEnum.MS_ALWAYS, self)
            else:
                self.logger.debug("Dialog aborted.")
        else:
            self._parent.msgbox(translate("MainWindow", "Function not available at the moment for system:" + " " + platform.system()), oPB.MsgEnum.MS_ALWAYS, self)
Пример #5
0
    def set_selected_script(self, script, script_type):
        """
        Receives select signal from window button, writes filename to model
        and emits itemChanged signal

        :param script: full pathname to script
        :param script_type: type of script
        """
        self.logger.debug("Set selected script: (" + script + ") (" + script_type + ")")
        if script_type == "setup":
            self.model_fields.item(0, 10).setText(Helper.get_file_from_path(script))
        if script_type == "uninstall":
            self.model_fields.item(0, 11).setText(Helper.get_file_from_path(script))
        if script_type == "update":
            self.model_fields.item(0, 12).setText(Helper.get_file_from_path(script))
        if script_type == "always":
            self.model_fields.item(0, 13).setText(Helper.get_file_from_path(script))
        if script_type == "once":
            self.model_fields.item(0, 14).setText(Helper.get_file_from_path(script))
        if script_type == "custom":
            self.model_fields.item(0, 15).setText(Helper.get_file_from_path(script))
        if script_type == "userlogin":
            self.model_fields.item(0, 16).setText(Helper.get_file_from_path(script))