Commit graph

69 commits

Author SHA1 Message Date
4f17b8b8a6 Link to opam diff
Compare with latest build as well as previous build.
2021-04-23 15:00:12 +02:00
b965b3ca7c Add Build.get_previous database lookup 2021-04-23 12:06:39 +02:00
643b156e07 Job.get does not return an option 2021-03-23 11:53:41 +01:00
3b81c52c59 Expose database repr, database fixup
Parts of the database representation are exposed.
A fixup command for builder-migrations is added to remove bad database
entries fixed in a57798f4c0. It is up to
the operator to remove the files and optionally re-upload the 'full'
files to builder-web.
2021-03-08 17:01:00 +01:00
a57798f4c0 Fix Build_{artifact,file}.add query 2021-03-04 14:32:58 +01:00
71cc34bac3 Use int instead of int64 for file sizes
We are not going to use the extra bit, and String.length returns the
size as an int anyway.
2021-02-25 15:27:45 +01:00
535d2ac0b9 Add file sizes 2021-02-24 11:31:31 +01:00
7b81d78554 Use scrypt (#32)
Switch to using scrypt for password hashing

Co-authored-by: Reynir Björnsson <reynir@reynir.dk>
Reviewed-on: https://git.robur.io/robur/builder-web/pulls/32
Co-Authored-By: reynir <reynir@reynir.dk>
Co-Committed-By: reynir <reynir@reynir.dk>
2021-02-23 15:20:18 +00:00
03fe06be87 Add index job_build_idx on build
This speeds up loading / by ~10x
2021-02-02 10:25:19 +01:00
6b96cae318 Add /hash/:hash endpoint
It looks up the given hash and finds the latest build producing an
artifact with this hash.
2021-02-02 09:56:17 +01:00
3a106342f5 Show latest build info in jobs view
This does N+1 queries where N is the number of jobs.
2021-01-29 14:34:56 +01:00
75fb497ac1 Fix Builder_db.Build.add
Query was not updated to reflect the new main_binary value
2021-01-29 10:17:03 +01:00
96a3da36cd Show build main binary and hash in job view 2021-01-29 10:17:03 +01:00
56737ec71b Migration code, model aware of main binary
Sqlite3 application_id and user_version are now set to identify the
database is a builder-web database, and the user_version represents the
schema version.

The 'build' table is extended with a 'main_binary' column. This
represents the main binary artifact from the build. This is decided by
there being exactly one file in bin/.

A migration tool is written that does both migrations and rollbacks, and
migration and rollback is implemented for the above mentioned change.
2021-01-29 10:15:31 +01:00
d63976f809 Sort builds latest first
Fixes #17
2021-01-22 13:16:05 +01:00
841dabcc03 Clean up Builder_db interface
Database encoding functions are not useful to library users.
2021-01-21 16:47:31 +01:00
22ef6395b8 Whitespace, log output 2021-01-21 12:02:07 +01:00
01babd0d0d User authentication and upload endpoint 2021-01-21 10:11:37 +01:00
5298108d1a Implement sqlite database backed builder-web 2021-01-19 10:44:32 +01:00