Example #1
0
    def beg(self, rpmdb_version, using_pkgs, tsis, cmdline=None):
        tid = self.swdb.trans_beg(
            int(time.time()),
            str(rpmdb_version),
            cmdline or "",
            str(misc.getloginuid()),
            self.releasever)

        self._tid = tid

        for pkg in using_pkgs:
            pid = self.pkg2pid(pkg)
            self.swdb.trans_with(tid, pid)

        if self.group:
            self._log_group_trans(tid)

        for tsi in tsis:
            for (pkg, state, obsoleting) in tsi._history_iterator():
                pid = self.pkg2pid(pkg)
                self.swdb.trans_data_beg(
                    tid,
                    pid,
                    convert_reason(tsi.reason),
                    state,
                    obsoleting)
        return tid
Example #2
0
    def beg(self, rpmdb_version, using_pkgs, tsis, cmdline=None, comment=""):
        try:
            self.swdb.initTransaction()
        except:
            pass

        tid = self.swdb.beginTransaction(int(calendar.timegm(time.gmtime())),
                                         str(rpmdb_version), cmdline or "",
                                         int(misc.getloginuid()), comment)
        self.swdb.setReleasever(self.releasever)
        self._tid = tid

        return tid
Example #3
0
    def beg(self, rpmdb_version, using_pkgs, tsis, cmdline=None):
        tid = self.swdb.trans_beg(int(time.time()),
                                  str(rpmdb_version), cmdline or "",
                                  str(misc.getloginuid()), self.releasever)

        self._tid = tid

        for pkg in using_pkgs:
            pid = self.pkg2pid(pkg)
            self.swdb.trans_with(tid, pid)

        if self.group:
            self._log_group_trans(tid)

        for tsi in tsis:
            for (pkg, state, obsoleting) in tsi._history_iterator():
                pid = self.pkg2pid(pkg)
                self.swdb.trans_data_beg(tid, pid, convert_reason(tsi.reason),
                                         state, obsoleting)
        return tid
Example #4
0
    def beg(self, rpmdb_version, using_pkgs, tsis, cmdline=None, comment=""):
        try:
            self.swdb.initTransaction()
        except:
            pass
        '''
        for pkg in using_pkgs:
            pid = self.pkg2pid(pkg)
            self.swdb.trans_with(tid, pid)
        '''

        # add RPMs to the transaction
        # TODO: _populate_rpm_ts() ?

        if self.group:
            for group_id, group_item in sorted(self.group._installed.items()):
                repoid = ""
                action = libdnf.transaction.TransactionItemAction_INSTALL
                reason = libdnf.transaction.TransactionItemReason_USER
                replaced_by = None
                ti = self.swdb.addItem(group_item, repoid, action, reason)
                ti.setState(libdnf.transaction.TransactionItemState_DONE)

            for group_id, group_item in sorted(self.group._upgraded.items()):
                repoid = ""
                action = libdnf.transaction.TransactionItemAction_UPGRADE
                reason = libdnf.transaction.TransactionItemReason_USER
                replaced_by = None
                ti = self.swdb.addItem(group_item, repoid, action, reason)
                ti.setState(libdnf.transaction.TransactionItemState_DONE)

            for group_id, group_item in sorted(self.group._removed.items()):
                repoid = ""
                action = libdnf.transaction.TransactionItemAction_REMOVE
                reason = libdnf.transaction.TransactionItemReason_USER
                replaced_by = None
                ti = self.swdb.addItem(group_item, repoid, action, reason)
                ti.setState(libdnf.transaction.TransactionItemState_DONE)

        if self.env:
            for env_id, env_item in sorted(self.env._installed.items()):
                repoid = ""
                action = libdnf.transaction.TransactionItemAction_INSTALL
                reason = libdnf.transaction.TransactionItemReason_USER
                replaced_by = None
                ti = self.swdb.addItem(env_item, repoid, action, reason)
                ti.setState(libdnf.transaction.TransactionItemState_DONE)

            for env_id, env_item in sorted(self.env._upgraded.items()):
                repoid = ""
                action = libdnf.transaction.TransactionItemAction_UPGRADE
                reason = libdnf.transaction.TransactionItemReason_USER
                replaced_by = None
                ti = self.swdb.addItem(env_item, repoid, action, reason)
                ti.setState(libdnf.transaction.TransactionItemState_DONE)

            for env_id, env_item in sorted(self.env._removed.items()):
                repoid = ""
                action = libdnf.transaction.TransactionItemAction_REMOVE
                reason = libdnf.transaction.TransactionItemReason_USER
                replaced_by = None
                ti = self.swdb.addItem(env_item, repoid, action, reason)
                ti.setState(libdnf.transaction.TransactionItemState_DONE)

        # save when everything is in memory
        tid = self.swdb.beginTransaction(int(calendar.timegm(time.gmtime())),
                                         str(rpmdb_version), cmdline or "",
                                         int(misc.getloginuid()), comment)
        self.swdb.setReleasever(self.releasever)
        self._tid = tid

        return tid