Planned changes to Policy Queues
I thought it would be good to give a short summary of my planned changes
to policy queues:
* Policy queues will be backed by a regular suite in a private archive.
* A new table policy_queue_uploads will keep track of packages located
in policy queues. It will contain this information:
name TEXT NOT NULL -- name of .changes; or INT referencing changes?
target_suite INT REFERENCES suite(id)
changes TEXT NOT NULL -- Changes field of .changes for announcements
with additional tables referencing included binary and source packages.
* File permissions on policy queues will change a bit: they can only be
applied on an per-archive base (as pool/ is shared). Also we copy the
.orig.tar.* when we accept packages in policy queues for which we don't
want to change the permissions.
I plan to use the following scheme instead: once a file enters an
archive, the archive permissions will be added *in* *addition* to those
already set. So a package going from unchecked -> new will get
group-readable, from new -> unstable it will get other-readable as well.
As we link files, this will also affect the original version of the files.
* process-new will only add overrides and a note whether the package
should be accepted or rejected. The actual accept/reject will be done
by process-policy same as for other policy queues.
* My plan for the upgrade process is as follows:
- update-db will convert policy queues to the new scheme, but will not
touch any files located within. These will have to be moved back to
unchecked by hand.
- The new archive for the queues will be created as $Dir::Base/policy
and $Dir::Base/new. Dir::Base=/srv/ftp-master.debian.org needs to be
added to dak.conf or the upgrade process will abort. The error message
would include information about re-processing packages in policy queues
for non-Debian users of dak.