commit:     35875a290ff4f094f6a9f2299f2c9e9c301482d9
Author:     Magnus Granberg <zorry <AT> gentoo <DOT> org>
AuthorDate: Thu Dec 22 18:31:02 2016 +0000
Commit:     Magnus Granberg <zorry <AT> gentoo <DOT> org>
CommitDate: Thu Dec 22 18:31:02 2016 +0000
URL:        
https://gitweb.gentoo.org/proj/tinderbox-cluster.git/commit/?id=35875a29

add new on BuildLogs and BuildJobs

 pym/tbc/db_mapping.py |  2 ++
 pym/tbc/sqlquerys.py  | 22 +++++++++++++++++++---
 2 files changed, 21 insertions(+), 3 deletions(-)

diff --git a/pym/tbc/db_mapping.py b/pym/tbc/db_mapping.py
index 91ae5dd..96ae75b 100644
--- a/pym/tbc/db_mapping.py
+++ b/pym/tbc/db_mapping.py
@@ -136,6 +136,7 @@ class BuildJobs(Base):
        Status = Column('status', Enum('Waiting','Building','Looked',))
        BuildNow = Column('build_now', Boolean, default=False)
        RemoveBin = Column('removebin', Boolean ,default=False)
+       New = Column('new', Boolean, default=False)
        TimeStamp = Column('time_stamp', DateTime, nullable=False, 
default=datetime.datetime.utcnow)
        __tablename__ = 'build_jobs'
 
@@ -188,6 +189,7 @@ class BuildLogs(Base):
        SummeryText = Column('summery_text', Text)
        LogHash = Column('log_hash', String(100))
        BugId = Column('bug_id', Integer, default=0)
+       New = Column('new', Boolean, default=False)
        TimeStamp = Column('time_stamp', DateTime, nullable=False, 
default=datetime.datetime.utcnow)
        __tablename__ = 'build_logs'
 

diff --git a/pym/tbc/sqlquerys.py b/pym/tbc/sqlquerys.py
index 6542c0a..de60af7 100644
--- a/pym/tbc/sqlquerys.py
+++ b/pym/tbc/sqlquerys.py
@@ -54,7 +54,7 @@ def get_job_status_waiting_on_guest(session):
 def update_job_list(session, status, job_id):
        JobInfo = session.query(Jobs).filter_by(JobId = job_id).one()
        JobInfo.Status = status
-       if status = 'Done':
+       if status == 'Done':
                JobInfo.TimeStamp = datetime.datetime.utcnow()
        session.commit()
 
@@ -244,7 +244,7 @@ def add_new_buildlog(session, build_dict, build_log_dict):
                return None, False
 
        def build_log_id_no_match(build_dict, build_log_dict):
-               NewBuildLog = BuildLogs(EbuildId = build_dict['ebuild_id'], 
Fail = build_log_dict['fail'], SummeryText = build_log_dict['build_error'], 
LogHash = build_log_dict['log_hash'])
+               NewBuildLog = BuildLogs(EbuildId = build_dict['ebuild_id'], 
Fail = build_log_dict['fail'], SummeryText = build_log_dict['build_error'], 
LogHash = build_log_dict['log_hash'], New = True)
                session.add(NewBuildLog)
                session.flush()
                build_log_id = NewBuildLog.BuildLogId
@@ -532,7 +532,7 @@ def get_package_info_from_package_id(session, package_id):
        return PackageInfo, CategoryInfo, RepoInfo
 
 def add_new_build_job(session, ebuild_id, setup_id, use_flagsDict, config_id):
-       NewBuildJobs =BuildJobs(EbuildId = ebuild_id, SetupId = setup_id, 
ConfigId = config_id, Status = 'Waiting', BuildNow = False, RemoveBin = True)
+       NewBuildJobs = BuildJobs(EbuildId = ebuild_id, SetupId = setup_id, 
ConfigId = config_id, Status = 'Waiting', BuildNow = False, RemoveBin = True, 
New = True)
        session.add(NewBuildJobs)
        session.flush()
        build_job_id = NewBuildJobs.BuildJobId
@@ -636,6 +636,22 @@ def reset_new_updated(session):
                for x in EMInfo:
                        x.New = False
                        session.flush()
+try:
+               BLInfo = session.query(BuildLogs).filter(BuildLogs.New == 
True).all()
+       except NoResultFound as e:
+               pass
+       else:
+               for x in BLInfo:
+                       x.New = False
+                       session.flush()
+       try:
+               BJInfo = session.query(BuildJobs).filter(BuildJobs.New == 
True).all()
+       except NoResultFound as e:
+               pass
+       else:
+               for x in BJInfo:
+                       x.New = False
+                       session.flush()
        try:
                EMInfo = 
session.query(EbuildsMetadata).filter(EbuildsMetadata.Updated == True).all()
        except NoResultFound as e:

Reply via email to