Commit Graph

26 Commits

Author SHA1 Message Date
Stephan Kulow
d21ce571f5 Refresh the packages in multiple threads 2022-11-03 22:04:45 +01:00
Stephan Kulow
f2019db8ff Ignore merge point candidates that create crosses
In OBS you can create submit requests for revisions that are behind
the last merge point, in git you can't - so we ignore them.

Fixes #14
2022-11-03 15:19:51 +01:00
Stephan Kulow
1c54a74ecd Download the full revision 2022-11-02 20:55:09 +01:00
Stephan Kulow
ba7436f10c Keep a reference to the database in DBRevision
To avoid passing the db to all actions
2022-11-02 18:27:09 +01:00
Stephan Kulow
172242891d Fix up some code after aplanas' continued review 2022-11-02 15:22:24 +01:00
Stephan Kulow
05cf792b26 Add the file_md5 to the download function so it can cache and verify 2022-11-02 13:35:45 +01:00
Stephan Kulow
a1ead29734 Extend documention and use some more pythonier loops 2022-11-02 13:29:18 +01:00
Stephan Kulow
9ed8abad2b Make database usage the default
Some cleanup of no longer used functions
2022-11-01 11:23:40 +01:00
Stephan Kulow
cfab0a522b Download .spec and .changes file only for now 2022-10-31 16:31:10 +01:00
Stephan Kulow
bfdade8ecf Create a flat list of commits to do from the tree
Walk the node tree and record the parents, then reverse the tree so we
can have the exact order in which to create git commits
2022-10-31 12:28:12 +01:00
Stephan Kulow
7a9e9ce334 Add actual tree and a test case for zsh 2022-10-27 13:16:50 +02:00
Stephan Kulow
38e4996280 Fix the fake revisions after introduction of cache
The way I stored it in the linked_revs was the wrong way
2022-10-27 07:35:08 +02:00
Stephan Kulow
4dc7e972a2 Make use of db.cursor() in with blocks 2022-10-26 15:49:14 +02:00
Stephan Kulow
2784171f75 Create fake revisions for every commit in the base of a linked package
This is a rather complex operation, but whenever a package changes in
Factory, the inherited package gets a shadow revision consisting of the
3-way merge. If this happens due to a request being accepted, this is
actually in most cases also commited by 'buildservice-autocommit',
so we're making sure this is always happening (and are actually
duplicating revisions in cases that we filter out later as empty
commits).

To differenciate the fake revisions from the real revisions, I add
a fraction part
2022-10-26 14:56:38 +02:00
Stephan Kulow
d17e60a608 Add another table to store linked_revs
We need to create fake revisions when packages were touched that are
linked themselves
2022-10-26 14:20:28 +02:00
Stephan Kulow
089b215f4c Build a revision tree 2022-10-26 14:16:22 +02:00
Stephan Kulow
bc74b6950b Implement a fileshash function for revision 2022-10-26 14:15:42 +02:00
Stephan Kulow
5bd790e915 Import the fixtures into the test database for queries 2022-10-26 14:15:41 +02:00
Stephan Kulow
ce3863e1b5 Add the capability to export the package data as test fixture 2022-10-26 14:13:24 +02:00
1656d73340
fixed formatting and other suggestions 2022-10-26 11:58:01 +02:00
Stephan Kulow
fa9ec8618e Load requests into the DB - not sure yet what for :) 2022-10-19 16:35:33 +02:00
Stephan Kulow
89c0335812 Import file list of revisions 2022-10-18 19:29:25 +02:00
Stephan Kulow
d747a3a761 Calculate the linked revision 2022-10-18 15:40:11 +02:00
Stephan Kulow
e8094cbc68 Import the link information into an extra table 2022-10-18 13:48:27 +02:00
Stephan Kulow
95412bc834 Prepare link collection 2022-10-18 13:13:52 +02:00
Stephan Kulow
25b45c5073 Split Revision into OBS and DB 2022-10-18 12:17:43 +02:00