Allow building livefses against a view of the archive at a fixed point in time
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Launchpad itself |
In Progress
|
High
|
Colin Watson | ||
livecd-rootfs (Ubuntu) |
Confirmed
|
Undecided
|
Unassigned |
Bug Description
It would be useful to be able to dispatch a set of livefs builds that all reliably build from the same point in time in the archive's history, even if they're dispatched at slightly different times. We did the InRelease-by-hash work (https:/
1) Somebody needs to work out the livecd-
2) In parallel with 1), we need to improve Launchpad's internal tracking of the history of archive index files. At the moment, the only feasible interface we could offer would be that the entity scheduling livefs builds would need to work out the SHA-256 hashes of all the relevant InRelease files and tell Launchpad what to use. This is cumbersome and hard to automate. Instead, it would be much better to make it work by timestamp (perhaps even simply having an option to pick whatever's current when the builds are scheduled), but to do that we need to convert ArchiveFile into a history table, adding date_created and date_superseded columns so that we can work out which version was live at any given time.
3) Once both 1) and 2) are done, we can add the relevant options to Launchpad's livefs build code to cause the correct sources.list to be dispatched.
Related branches
- Stuart Bishop: Pending (db) requested
- Launchpad code reviewers: Pending (db) requested
-
Diff: 17 lines (+13/-0)1 file modifieddatabase/schema/patch-2209-74-1.sql (+13/-0)
- Launchpad code reviewers: Pending requested
-
Diff: 771 lines (+248/-178)5 files modifiedlib/lp/archivepublisher/publishing.py (+43/-22)
lib/lp/archivepublisher/tests/test_publisher.py (+94/-61)
lib/lp/soyuz/interfaces/archivefile.py (+12/-9)
lib/lp/soyuz/model/archivefile.py (+37/-47)
lib/lp/soyuz/tests/test_archivefile.py (+62/-39)
- William Grant (community): Approve (db)
-
Diff: 22 lines (+16/-0)1 file modifieddatabase/schema/patch-2211-15-0.sql (+16/-0)
- William Grant (community): Needs Information (db)
-
Diff: 22 lines (+16/-0)1 file modifieddatabase/schema/patch-2211-15-0.sql (+16/-0)
- Colin Watson (community): Approve
- Ioana Lasc: Pending requested
-
Diff: 184 lines (+97/-1)4 files modifieddatabase/schema/security.cfg (+1/-0)
lib/lp/archivepublisher/publishing.py (+1/-0)
lib/lp/scripts/garbo.py (+36/-0)
lib/lp/scripts/tests/test_garbo.py (+59/-1)
- William Grant (community): Approve (code)
-
Diff: 742 lines (+203/-237)5 files modifiedlib/lp/archivepublisher/publishing.py (+21/-31)
lib/lp/archivepublisher/tests/test_publisher.py (+92/-80)
lib/lp/soyuz/interfaces/archivefile.py (+15/-14)
lib/lp/soyuz/model/archivefile.py (+30/-62)
lib/lp/soyuz/tests/test_archivefile.py (+45/-50)
- Launchpad code reviewers: Pending requested
-
Diff: 269 lines (+98/-98)2 files modifiedlib/lp/archivepublisher/publishing.py (+95/-98)
lib/lp/archivepublisher/tests/test_publisher.py (+3/-0)
- Ioana Lasc (community): Approve
-
Diff: 170 lines (+83/-1)4 files modifieddatabase/schema/security.cfg (+1/-0)
lib/lp/archivepublisher/publishing.py (+1/-0)
lib/lp/scripts/garbo.py (+34/-0)
lib/lp/scripts/tests/test_garbo.py (+47/-1)
- Colin Watson (community): Approve
-
Diff: 106 lines (+62/-0)3 files modifieddatabase/schema/patch-2210-09-0.sql (+13/-0)
database/schema/patch-2210-12-0.sql (+45/-0)
database/schema/security.cfg (+4/-0)
- Launchpad code reviewers: Pending requested
-
Diff: 766 lines (+242/-172)5 files modifiedlib/lp/archivepublisher/publishing.py (+43/-22)
lib/lp/archivepublisher/tests/test_publisher.py (+88/-55)
lib/lp/soyuz/interfaces/archivefile.py (+12/-9)
lib/lp/soyuz/model/archivefile.py (+37/-47)
lib/lp/soyuz/tests/test_archivefile.py (+62/-39)
- William Grant (community): Approve (db)
-
Diff: 19 lines (+13/-0)1 file modifieddatabase/schema/patch-2210-09-0.sql (+13/-0)
Changed in launchpad: | |
status: | Triaged → In Progress |
assignee: | nobody → Colin Watson (cjwatson) |
tags: | added: id-5b296c1ea29e35b30684caed |
tags: | added: id-5e5451e0091a4c48a5bf3c57 |
tags: | added: id-5e724267b2a8370b605b1367 |
information type: | Public → Public Security |
information type: | Public Security → Public |
information type: | Public → Private Security |
information type: | Public → Private Security |
information type: | Private Security → Public |
Changed in livecd-rootfs (Ubuntu): | |
assignee: | nobody → Bryant Keith Upton (keithupton7496) |
Changed in livecd-rootfs (Ubuntu): | |
assignee: | Bryant Keith Upton (keithupton7496) → nobody |
Status changed to 'Confirmed' because the bug affects multiple users.