Commit graph

1488 commits

Author SHA1 Message Date
78695c46a1 Just update the package derivation entries that need updating
Previously, all the entries for the branch were deleted, but not, only the
entries for the branch, that are present in the revision that was loaded will
be deleted. This is more efficient, as it avoids deleting and recreating
entries in the table that shouldn't have changed.
2019-11-24 20:18:08 +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
0ffd8caeeb Add a script to help manage build servers
This computes and displays the tokens needed to send build events to the Guix
Data Service.
2019-11-23 11:50:51 +00:00
c3b17c0cb0 Add guile-gcrypt to the guix-dev.scm file 2019-11-23 11:50:33 +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
9a3dbb1d5b Add new table to store token seeds for build servers 2019-11-23 11:30:36 +00:00
6fad559b32 Improve select-build-servers to convert strings to appropriate types 2019-11-23 11:23:16 +00:00
53652db9ca Add a page to render the channel news entries for a revision 2019-11-22 06:28:10 +00:00
5fc23d788d Expand compare by datetime output
Include the commit and datetime for the revisions that were compared.
2019-11-21 20:50:54 +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
ae150888d8 Remove some peek statements that snuck in 2019-11-21 20:48:41 +00:00
23f60a6bbb Include news entries on the comparison page 2019-11-21 19:56:19 +00:00
6c5370f9c5 Add a function to get the channel news entries in a revision 2019-11-21 19:56:19 +00:00
62cabc80bf Link to the comparison page when viewing derivation history 2019-11-21 19:56:19 +00:00
f23ee71ea7 Insert channel news entries when loading new guix revisions
If the channel-news-for-commit function is present.
2019-11-21 19:56:19 +00:00
2e8ca7f547 Extract out creating the guix-revision from extract-information-from
To allow for using the guix-revision-id when inserting channel news entries.
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
66d726f1fd Refactor channel handling in the load-new-guix-revision module
To allow for passing the channel to channel-news-for-commit.
2019-11-21 19:56:19 +00:00
7c611402a0 Add a basic page for derivation source files
Just so that the links work.
2019-11-21 19:54:54 +00:00
759ced5c9d Add a function for selecting derivation source files 2019-11-21 19:54:54 +00:00
5d7dadc9fe Add more links to store items
On the formatted derivation and derivation comparison pages.
2019-11-21 19:54:54 +00:00
81eb5f88d1 Add a generic way of presenting values that may be store items 2019-11-21 19:54:54 +00:00
022cbc68ef Link to the formatted derivation page 2019-11-21 19:54:54 +00:00
78e830d91e Link to derivation comparison page from the compare/derivations page 2019-11-21 19:54:54 +00:00
e31f370de0 Add a basic derivation comparison page 2019-11-21 19:54:54 +00:00
edb21317a6 Remove a couple of peek calls that snuck in 2019-11-21 19:54:54 +00:00
ab51599057 Include the hash algorithm and hash on the formatted derivation page 2019-11-10 09:41:32 +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
a658d64b46 Add a page to show a formatted derivation representation
The HTML is very rough, and the way it's displayed is also rough, but it does
provide a way to understand the derivation. I'm also unsure it's a perfect
representation, but it's a start at least.
2019-11-09 20:50:53 +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
1442d17a3d Add a new table to describe the history of derivations
There's already the package_versions_by_guix_revision_range table, but I think
it would be also useful to be able to see how derivations change over time.
2019-11-09 19:59:55 +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
5e1808b4c2 Work around a problem loading guix revisions
Between b13b9384bc43bf93c754c037956c8ef9a99c2b41 and
601171a9bc7ca6e4acb932895a07c0ca9aedfdac, this method failed, so catch the
error to allow loading the affected revisions.
2019-11-03 15:46:44 +00:00
5e2bc7c6e9 Fix various warnings relating to the controller refactoring 2019-10-18 18:44:42 +01:00
aee903bc8c Add missing files to the SOURCES list in Makefile.am 2019-10-18 18:44:18 +01:00
1ea0c9ba26 Sort the SOURCES in the Makefile.am 2019-10-18 18:13:34 +01:00
e61a5942e9 Split the Direnv section in the README
Move the bit about the paramstring to after the database setup, as you need to
have set the password.
2019-10-18 17:50:06 +01:00
263eb0e0a9 Handle unknown requests better within controllers 2019-10-18 17:23:59 +01:00
c9e0e311bb Send inferior error output to stderr
Ideally this would go in to the database somehow as well, but the only idea I
have for that is pass in a pipe, and then spawn a thread to read from the
other end of that pipe in a loop to send the output to the database.

That hasn't been written yet, so just send the output to stderr for now.
2019-10-18 17:15:45 +01:00
917d031d4f Remove unused inferior-package-transitive-supported-systems function 2019-10-18 17:15:25 +01: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
d0a1ebcb11 Move the database setup section later in the README
Given that the .envrc file and direnv setup in the previous step may provide
the PostgreSQL tools that you need to run here, it's probably more sensible to
re-order the steps in this way.
2019-10-15 19:18:07 +01:00
4ce8d9e830 Extract the comparison pages out from the main modules
In to their own modules. This should help make the code more understandable,
and allow future refactoring for readability.
2019-10-14 19:24:14 +01:00
94256c4fa1 Move the unknown-revision function to the correct module 2019-10-14 18:38:11 +01:00
86db73c05a Refactor the repository pages code
Move it out of the main controller and html modules to better separate the
code, which should allow to make it easier to read in the future.
2019-10-14 18:28:25 +01:00