Commit graph

122 commits

Author SHA1 Message Date
5b54259974 Fix matching equivalent derivations in another function 2019-12-16 20:11:57 +00:00
96f897cf3b Add a page with charts to show package reproducibility 2019-12-16 19:57:36 +00:00
bdcba528fc Fix group-to-alist
To not just append elements to the alist.
2019-12-16 15:19:02 +00:00
a41249d8fe Move group-to-alist to the model utils module
So it can be more widely used.
2019-12-16 15:19:02 +00:00
5337b171ea Add a function to find the builds required for a build that failed 2019-12-16 15:19:02 +00:00
771b01ef80 Link to the build pages from the derivation page 2019-12-16 15:19:02 +00:00
308d1d7102 Add a page for each build 2019-12-16 15:18:14 +00:00
a59f352046 Split out select-build-by-build-server-and-derivation-file-name
Create select-build-id-by-build-server-and-derivation-file-name, which just
returns the id, and then a variant that returns more fields for making a page
for each build.
2019-12-15 10:32:40 +00:00
b693d3e57d Improve select-builds-with-context-by-derivation-file-name
To find builds for equivalent derivations.
2019-12-15 08:51:31 +00:00
a84fc954d1 Extend select-build-stats to allow filtering by revision 2019-12-14 20:59:54 +00:00
633e757fe8 Break down the build stats by build server 2019-12-14 20:17:53 +00:00
9dddf2c606 Implement the reproducibility status filter
On the derivation-outputs page.
2019-12-14 17:10:23 +00:00
156b7eea7e Improve the select-build-stats function
Account for equivalent derivations, rather than counting them as unknown.
2019-12-12 20:07:22 +00:00
f13077d087 Remove non-existent export from the derivation module 2019-12-12 20:07:22 +00:00
eecfdeb9e4 Add a function to select the outputs in a revision 2019-12-12 20:07:22 +00:00
544f122ff5 Fix related builds in select-derivations-in-revision
Rather than just counting builds where the derivation matches, select builds
based on the derivation outputs, which accounts for different but equivalent
derivations.
2019-12-12 20:07:22 +00:00
c8b93cb0d0 Add new derivation_output_details_set_id column to the builds table
As this will hopefully provide a faster way of associating derivations with
builds.
2019-12-12 20:07:22 +00:00
a965ba1f6a Start storing and identifying sets of derivation outputs
Derivations are effectively equivalent if they produce the same set of
outputs, which is possible because of the equivalence of fixed output
derivations. A fixed output derivation can be different, but equivalent,
because it produces the same fixed output.

To better allow tracking equivalent derivations, primarily to allow working
out what derivations might correspond to a build, store the sets of derivation
outputs, and which derivations they relate to.
2019-12-12 20:07:22 +00:00
0cebb97340 Add a function to select derivations in a revision 2019-12-12 20:07:22 +00:00
aa3af00e07 Fix and improve fetching outputs to fetch from build servers
The join on derivation_outputs was completely wrong, so fix that.

Also, rather than only selecting outputs where there's a corresponding build,
just eliminate outputs where there is an entry in the nars table, fetched from
the relevant build server.

Also just look at x86_64-linux derivations, because there's no filtering on
relevant derivations for a build server at the moment.
2019-12-12 20:07:22 +00:00
1e040010fc Fix the match statement in select-build-by-build-server-and… 2019-12-12 20:07:22 +00:00
eb2ba599d9 Populate the narinfo_fetch_records table 2019-12-12 20:07:22 +00:00
8e5f8e4170 Add a new page for the narinfos associated with an output 2019-12-12 20:07:22 +00:00
2d87bd6340 Add a page for each signing key 2019-12-12 20:07:22 +00:00
a0ce016c02 Support querying builds by build servers 2019-12-12 20:07:22 +00:00
f7069456b5 Support querying builds by status 2019-12-12 20:01:30 +00:00
0fa747e404 Support handling jsonb in insert-missing-data-and-return-all-ids 2019-11-30 10:53:13 +00:00
b6194e7b3d Begin to add support for importing narinfo files
This commit adds the tables, as well as code to support extracting data from
narinfo files.
2019-11-30 10:51:58 +00:00
20c75e1103 Fix some queries relating to the build_status table changes 2019-11-28 19:32:00 +00:00
5663235048 Rework the builds and build_status tables as well as related code
Allow for build status information to be submitted by POST request. This
required some changes to the builds and build_status tables, as for example,
the Cuirass build id may not be available, and the derivation may not be know
yet, so just record the derivation file name.
2019-11-24 20:18:08 +00:00
79d85f5847 Add a new module to handle build server token seeds
The intent with these tokens is for them to be provided when build events are
submitted, preventing unauthorised submission of build events.

It should be possible to make the database public, so it shouldn't contain any
secret information. To have secret tokens that aren't in the database, store a
token seed, and combine this with some secret data to compute the secret.
2019-11-23 11:33:16 +00:00
6fad559b32 Improve select-build-servers to convert strings to appropriate types 2019-11-23 11:23:16 +00:00
152910ec9c Include the datetime in select-guix-revision-for-branch-and-datetime 2019-11-21 20:50:36 +00:00
75d5e4b9d5 Fix select-guix-revision-for-branch-and-datetime
Flip the inequality and order, as this was picking the first revision after
the datetime, rather than the last revision before it, which was the
intention, as this should give you the revision on the branch, at the
datetime.
2019-11-21 20:48:58 +00:00
6c5370f9c5 Add a function to get the channel news entries in a revision 2019-11-21 19:56:19 +00:00
3ef99acc79 Add a new channel-news module, along with tables the relevant data 2019-11-21 19:56:19 +00:00
759ced5c9d Add a function for selecting derivation source files 2019-11-21 19:54:54 +00:00
34318fbb50 Improve select-derivation-outputs-by-derivation-id
It now converts the recursive value to a boolean.
2019-11-10 09:39:45 +00:00
41afcef9a6 Add a function to select derivation sources 2019-11-09 20:47:38 +00:00
7b3bc5bcfa Improve some derivation model functions
Return integer values for ids, rather than strings (as this type is more
appropriate). Also, better parse the derivation arguments and environment
variables.
2019-11-09 20:39:47 +00:00
4710d4e398 Add a function to help parse PostgreSQL arrays 2019-11-09 20:27:14 +00:00
04bb2d52bc Add first version of a page with the history of package derivations
Some filtering options need adding for the system and target, as it's
currently hardcoded, but the general page does work.
2019-11-09 20:07:34 +00:00
fea4dc9385 Sort the derivation inputs by derivation file name
As this is the way they're sorted in the derivation.
2019-11-03 16:04:51 +00:00
b36294da4a Fix some missing branch constraints in package-versions-for-branch
The lack of these meant that versions on other branches could appear in the
results.
2019-10-17 21:24:48 +01:00
818be2ed98 Fix some long lines in the package-versions-for-branch query 2019-10-17 21:24:22 +01:00
fc6aeab4ed Add select-guix-revision-for-branch-and-datetime
To get the guix revision that was on a branch at a given date and time.
2019-10-13 19:46:04 +01:00
ab8a02cf13 Sort package versions on a branch by version as well
To fix the order when the first_datetime matches.
2019-10-08 19:44:09 +01:00
fb301a8495 Add a package page, showing versions for a revision 2019-10-03 21:35:29 +01:00
e486ba6274 Remove a redundant query condition
The git_branches.commits column doesn't allow NULL values.
2019-09-29 17:12:20 +01:00
59c342ffde Add a new page to show package versions available on a branch
This is useful when looking back through history at what package versions were
previously available.
2019-09-27 17:28:46 +01:00