At startup, always check the digests of the files #18

Closed
opened 2024-11-13 12:19:44 +00:00 by hannes · 4 comments
Owner

we should do this, maybe in the background -- so the startup should be:

  • try to get the git archive / index.tar.gz up and running (if not, do the git clone)
  • start the webserver
  • start the git pull (unless already done in the first step)
  • check the hashes of the archive, potentially moving data elsewhere
  • allow access to the tarballs that have been checked
  • download of needed tarballs

I find the "bringing up the web service" should be the highest priority, but delivering archives with bad checksums is something that we should really avoid.

Currently, we have a --verify-sha256 flag which is off by default and only if it is true, the archive checksums are verified (and this is done before the web server is up and running).

we should do this, maybe in the background -- so the startup should be: - try to get the git archive / index.tar.gz up and running (if not, do the git clone) - start the webserver - start the git pull (unless already done in the first step) - check the hashes of the archive, potentially moving data elsewhere - allow access to the tarballs that have been checked - download of needed tarballs I find the "bringing up the web service" should be the highest priority, but delivering archives with bad checksums is something that we should really avoid. Currently, we have a `--verify-sha256` flag which is off by default and only if it is true, the archive checksums are verified (and this is done before the web server is up and running).
Owner

Note that we don't need to check values into the git archive. The PACK file has a signature (a SHA1) which verify the integrity of the whole Git archive.

Note that we don't need to check values into the git archive. The PACK file has a signature (a SHA1) which verify the integrity of the whole Git archive.
Author
Owner

I'll open a separate issue.

I'll open a separate issue.
Author
Owner

see #24 for an implementation.

see #24 for an implementation.
Author
Owner

done in #24

done in #24
Sign in to join this conversation.
No labels
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: robur/opam-mirror#18
No description provided.