Commit Graph

4154 Commits

Author SHA1 Message Date
bf3e1cf77b Disable the remote dest store for the channel test
Looks like feature is only works when the destination store is the local
store
2021-04-29 07:24:20 +02:00
9c787e5e94 Document the use_external_destination_store test_init param 2021-04-29 07:24:20 +02:00
7af63658f1 tests: Make the external destination store optional
Co-authored-by: Graham Christensen <graham@grahamc.com>
2021-04-29 07:24:20 +02:00
305c27d3fb Move the default-machine-file test under queue-runner
Just a bit of housekeeping to keep the testsuite clean
2021-04-29 06:55:23 +02:00
f61a13d2db Only add the Nix system feature to the test that requires it 2021-04-29 06:54:25 +02:00
7017d41117 Merge pull request #942 from DeterminateSystems/port-api-test-master
Port api-test to yath
2021-04-28 19:48:33 -04:00
a44e5b73a8 api-test: clean up, use subtests 2021-04-28 19:41:49 -04:00
015d8298cb flake.nix: drop the API test 2021-04-28 18:32:23 -04:00
5c5b53961e fixup: api-test.t expected to pass inputs as inputs 2021-04-28 18:30:53 -04:00
fdb6e7dd97 fixup: return the user entity on login 2021-04-28 18:30:35 -04:00
a34f23f7e6 api-test: use is for nicer errors 2021-04-28 18:28:35 -04:00
20df86c275 api-test.t: make it work under yath
1. Configure the in-memory Hydra instance with a null path input cache
time to avoid caching slowing the test down.
2. Use the Catalyst::Test helpers so we talk to the application and skip
needing to actually run a webserver.
3. Change path references to use a tempdir, since this is running while
other tests are also running.
4. Change the login flow to save a cookie and pass it manually. A bit
weird, but it avoids a dependency on heavier browser-mimicking
libraries.
2021-04-28 18:28:35 -04:00
38c7f88b7c rename api-test.pl to .t so it runs under yath 2021-04-28 18:28:35 -04:00
dd6cd33e98 move the api-test.nix in to the jobsdir 2021-04-28 18:28:35 -04:00
823da22e4f Merge pull request #937 from DeterminateSystems/flesh-out-api
hydra-api: flesh out Jobset, JobsetInput schemas; implement DELETE /jobset/{project-id}/{jobset-id}
2021-04-28 13:43:04 -04:00
948b3cf073 Jobset: add HTTP API test 2021-04-28 10:37:06 -07:00
725c9c2f81 login: redirect to the current-user page 2021-04-28 08:32:10 -07:00
d589db2ed9 login: missing parameters are 400s 2021-04-28 08:31:59 -07:00
8d6a5aac84 Merge pull request #939 from regnat/include-localhost-features
Include localhost's features in the default machine file
2021-04-28 12:25:21 +02:00
0d3977866e Run the tests with a remote dest store
Set `dest_store` in the test hydra config, so that the testsuite ensures
that the distinction between the local store and the destination store
is properly taken into account.

Fix #938
2021-04-28 12:22:54 +02:00
abff212d06 Use system-features from the Nix conf in the default machine file
Fix #936
2021-04-28 11:43:04 +02:00
d58b3274f9 test: Don't generate a Nix conf in the makefile
The config is overriden by the `test_init` perl function, so it’s at
best misleading to create a first one there
2021-04-28 11:41:37 +02:00
42ef3b7b72 hydra-api: update Project and Jobset examples with the new schema
For future reference, this was generated by sending the request and piping it to
`yq -y` so that it would spit out YAML.
2021-04-27 23:09:33 -07:00
bcd3bbb680 hydra-api: implement DELETE /jobset/{project-id}/{jobset-id} 2021-04-27 16:16:42 -07:00
72fec31dbb hydra-api: flesh out JobsetInput schema 2021-04-27 16:16:42 -07:00
2600810551 hydra-api: flesh out Jobset schema
* made all columns available via the API (except for forceeval)
* renamed flakeref to flake to unify the API with the database schema
* renamed inputs to jobsetinputs to unify the API with the database schema
2021-04-27 16:16:42 -07:00
0c8d016a38 Merge pull request #935 from DeterminateSystems/delete-project
hydra-api: implement DELETE /project/{id}
2021-04-27 11:15:15 -04:00
ddccf6a60e hydra-api: implement DELETE /project/{id} 2021-04-27 08:10:09 -07:00
ada497db4f Merge pull request #934 from DeterminateSystems/missing-name
hydra-api: add missing `name` property
2021-04-26 22:02:14 -04:00
9128802727 hydra-api: add missing name property
The Hydra website allows you to change the name of a Project, so it only makes
sense for the API to expose this functionality as well.
2021-04-26 18:55:10 -07:00
fa5811eabf Merge pull request #933 from cole-h/boolean-json
Serialize `enabled` and `hidden` columns as boolean
2021-04-26 19:44:59 -04:00
50fab154a4 ToJSON: serialize string_columns to JSON
If the column is undefined, then it should be an empty string according to your
API spec.
2021-04-26 16:39:13 -07:00
f0ede5f8b8 t: Test Projects JSON serialization and deserialization 2021-04-26 16:39:13 -07:00
f2b9649bf2 Projects: serialize enabled and hidden as boolean 2021-04-26 16:03:32 -07:00
4aea02e1e1 ToJSON: serialize boolean_columns to JSON boolean 2021-04-26 16:03:32 -07:00
683b8c41c1 Merge pull request #932 from cole-h/project
Add homepage to Projects schema
2021-04-26 18:57:02 -04:00
8e3b3c95f8 Merge pull request #931 from cole-h/put-project
hydra-api: hidden -> visible
2021-04-26 18:48:29 -04:00
c757867b9e Add homepage to Projects schema 2021-04-26 15:46:30 -07:00
221cc0663d hydra-api: hidden -> visible
The PUT API doesn't accept `hidden` (even though the GET API responds with it).
2021-04-26 15:28:20 -07:00
2dfcd411da Merge pull request #928 from cole-h/put-project
hydra-api: add missing properties to PUT /project/{id}
2021-04-26 15:06:05 -04:00
36da978489 hydra-api: add missing properties to PUT /project/{id} 2021-04-26 12:01:11 -07:00
453b8479be Merge pull request #927 from cole-h/nonexistent-user-400
Return HTTP 400 when creating Project with nonexistent user
2021-04-26 14:40:15 -04:00
47e19ba22c Return HTTP 400 when creating Project with nonexistent user 2021-04-26 11:32:39 -07:00
bc292db45b Merge pull request #923 from Ma27/mail-auth
Add AuthenSASL to perl deps; improve email docs
2021-04-26 13:11:21 -04:00
963085a04a Add AuthenSASL to perl deps; improve email docs
The addition of AuthenSASL seems to be necessary to properly
authenticate against an SMTP server. Without this I got errors
such as

    error with Hydra::Plugin::EmailNotification=HASH(0x6ad0128)->buildFinished: SMTP auth requires MIME::Base64 and Authen::SASL
2021-04-26 18:33:57 +02:00
18c02afe77 Merge pull request #921 from Ma27/email-notification-create-jobset
Make it possible to enable email notifications when creating a jobset
2021-04-26 11:22:17 -04:00
523d6df5b8 Fix GitHub status update for private flakes.
Also, if the parse fails, don't try to update the GitHub status, as
this will eventually cause rate-limiting.
2021-04-26 01:38:24 +01:00
21ed005c84 Make it possible to enable email notifications when creating a jobset
The checkbox is only enabled if `email_notification = 1` is set in
`hydra.conf`. However, when creating jobset (in contrast to the edit
form), the checkbox is always disabled because the `emailNotification`
parameter in Catalyst's stash was missing.
2021-04-24 19:48:43 +02:00
85e299d3d7 flake.lock: Update
Flake input changes:

* Updated 'nix': 'github:NixOS/nix/906adadacd2d1c98346a2f42c0b42a32d2806d94' -> 'github:NixOS/nix/d9864be4b757468d33bc49edddce5e4f04ef4b90'
2021-04-22 10:44:21 +02:00
a53f6657ee Remove gc-check-reachability setting
It no longer exists on nix master.
2021-04-20 13:35:39 +02:00