[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

GSoC weekly report of Alexandre Viau for week 7 | autodeb



Hello,

This is my weekly report for week 7.

=== Repositories ===

- Repositories now include all release architectures even if there are
no builds for the architecture, avoiding some apt error messages

- The repository URL is now displayed on the ArchiveUpgrade page, making
it easier for users to add a specific archive rebuild in their apt sources

- Improved the aptly client to make it much easier to use. The API is
quite complicated and I have modified our API client so that it handles
some of the repetitive complexity.

- Created a "master" ArchiveUpgrade repository. Repositories now work
like this:
 * There is one large repository that contains the most recent upgraded
   packages, no matter where they were created from. Ideally, that would
   be the repository that users add to their sources. Then they can
   probably run a command like this to attempt installing from autodeb
   when they are not happy with the packages in unstable:
     - apt-get install -t autodeb <package>
 * There is one repository per ArchiveUpgrade, it contains only the
   upgraded packages for this specific run and nothing else. These
   repositories should probably be kept only for some amount of time, I
   think that they can be more useful for ArchiveRebuilds than
   ArchiveUpgrades because rebuilding with a certain environement
   requires to test a group of packages together.

- Created a new job type: AddBuildToRepository. This moves the
  reponsibility of uploading packages to a repository outside of the
  package upgrade job. Initially, part of this responsibility was also
  at the end of the ArchiveUpgradeJob, making the code even harder to
  read.

=== Refresh patches ===

I have started experimenting with ways to refresh patches. There is a
large number of package upgrades that fail because the paches have fuzz.
I have made some failed attempts at upgrading the patches automatically.
The initial issue was that we currently don't unpack the source, making
it impossible to refresh the patches. I will keep working on this in the
next couple of days.

=== Other ===

.DSC links are no longer advertised for uploads. They were replaced with
.changes links as they are more representative of an upload. One of the
issues was that .dscs point to the orig tarball even if it was not
included in the upload, resulting in dget failures with 404 errors.
Moving to .changes files has not solved this issue but it is one step
forward.

=== Experiments ===

I have started experimenting with large jobs. The biggest run that I
have executed was for about 1000 packages and it took less than 2 hours
which is very good for the resources that we have I think. I will keep
experimenting and I hope to produce stats such as the rate of success
depending on the selected patch refresh strategy.

=== dak ===

My patch to dak was merged and I could implement it in autodeb. Autodeb
can now build uploads even if they don't include the source tarball, as
it will download it from the archive by locating it with the sha256sum.

I have sent a follow-up patch to improve things further:
 - https://salsa.debian.org/ftp-team/dak/merge_requests/76

=== auth ===

The way the authentication backend was written would force Autodeb user
ids to match with the ones on the auth backend. I have improved things
to that this is no longer the case, it makes the code easier to read and
removes unnecessary coupling.

=== infrastructure ===

My backport of aptly was accepted in stretch-backports and I have
adapted the ansible scripts to install aptly from there instead of our
custom install.

Cheers,

-- 
Alexandre Viau
aviau@debian.org

Attachment: signature.asc
Description: OpenPGP digital signature


Reply to: