summaryrefslogtreecommitdiffstats
path: root/nixos/tests/hydra
AgeCommit message (Collapse)Author
2020-10-21nixos/hydra: remove hydra-migration upgrade pathMaximilian Bosch
This should NOT be backported to 20.09! When 21.03 is released, the DB changes are about a year old and operators had two release cycles for the upgrade. At this point it should be fair to remove the compat layer to reduce the complexity of the module itself.
2020-08-04nixos/tests/hydra*: fix evalMaximilian Bosch
To specify distributed build-machines, `nix.distributedBuilds` must be set to `true` now[1]. [1] 67b6e5639126ab6e8ec5d2b303aa9736a626b609
2020-06-02hydra-unstable: 2020-04-16 -> 2020-06-01Maximilian Bosch
2020-04-16nixos/tests: fix inclusion of hydra testMaximilian Bosch
2020-04-07hydra: 2020-03-24 -> 2020-04-07Maximilian Bosch
Also removed `pkgs.hydra-flakes` since flake-support has been merged into master[1]. Because of that, `pkgs.hydra-unstable` is now compiled against `pkgs.nixFlakes` and currently requires a patch since Hydra's master doesn't compile[2] atm. [1] https://github.com/NixOS/hydra/pull/730 [2] https://github.com/NixOS/hydra/pull/732
2020-03-28hydra: 2020-02-06 -> 2020-03-{24,27}Maximilian Bosch
Upgrades Hydra to the latest master/flake branch. To perform this upgrade, it's needed to do a non-trivial db-migration which provides a massive performance-improvement[1]. The basic ideas behind multi-step upgrades of services between NixOS versions have been gathered already[2]. For further context it's recommended to read this first. Basically, the following steps are needed: * Upgrade to a non-breaking version of Hydra with the db-changes (columns are still nullable here). If `system.stateVersion` is set to something older than 20.03, the package will be selected automatically, otherwise `pkgs.hydra-migration` needs to be used. * Run `hydra-backfill-ids` on the server. * Deploy either `pkgs.hydra-unstable` (for Hydra master) or `pkgs.hydra-flakes` (for flakes-support) to activate the optimization. The steps are also documented in the release-notes and in the module using `warnings`. `pkgs.hydra` has been removed as latest Hydra doesn't compile with `pkgs.nixStable` and to ensure a graceful migration using the newly introduced packages. To verify the approach, a simple vm-test has been added which verifies the migration steps. [1] https://github.com/NixOS/hydra/pull/711 [2] https://github.com/NixOS/nixpkgs/pull/82353#issuecomment-598269471
2019-12-29Merge pull request #76151 from Ma27/bump-hydralewo
hydra: 2019-08-30 -> 2019-11-13
2019-12-22nixos/tests/hydra: port to pythonMaximilian Bosch
2019-12-21nixos/hydra: also run test with `pkgs.nixFlakes`Maximilian Bosch
2019-09-14nixos/hydra: incorporate upstream changes and update testMaximilian Bosch
During the last update, `hydra-notify` was rewritten as a daemon which listens to postgresql notifications for each build[1]. The module uses the `hydra-notify.service` unit from upstream's Hydra module and the VM test ensures that email notifications are sent properly. Also updated `hydra-init.service` to install `pg_trgm` on a local database if needed[2]. [1] https://github.com/NixOS/hydra/commit/c7861b85c4c3cc974b27147bbf3cc258b9fe9cc3 [2] https://github.com/NixOS/hydra/commit/8a0a5ec3a3200d4f4d4d38f87d0afdb49f092b39
2019-09-14nixos/hydra: fix testMaximilian Bosch
We ship `https://cache.nixos.org` as binary cache by default which automatically substitutes the test derivation used inside the Hydra test. However it needs to be built locally to confirm that `hydra-queue-runner` works properly. Also inherited the platform name for the test derivation from `system` to ensure that the build can be tested on each supported platform. ZHF #68361
2019-07-01treewide: use dontUnpackworldofpeace
2019-02-07nixos/hydra: enhance test for multiple Nix versionsMaximilian Bosch
Hydra should support multiple Nix versions (and currently contains fixes to work with Nix 2.0 and higher). Further Nix versions can be added to the `hydraPkgs` expression in the test case which lists all supported Nix versions for Hydra.
2018-11-08nixos/tests/hydra: set the project visibleAntoine Eiche
If projects are not visible, the are not taken into account by search queries and it's quite hard to debug!
2018-08-13hydra: 2017-11-21 -> 2018-08-07Maximilian Bosch
This bumps Hydra to the latest revision available. As Hydra doesn't have a release model (and therefore no tags) ATM, the derivation will pin against the actual git revision and the date of the commit in the derivation name. Additionally the following changes have been made: * Dropped `postUnpack` phase. It is useful when working with the Hydra source (and no dirty changes shall be used in `release.nix`, but is has no use in `nixpkgs`). * Added myself as maintainer to have more folks available in case of future breakage. * Implemented support for Nix 2.0 and `unstable` (currently 2.1): Since 1672bcd230447f1ce0c3291950bdd9a662cee974 in NixOS/nix the evaluator differentiates between `settings` and `evalSettings`. Previously `restrictEval` in `hydra-eval-jobs.cc` has been set in `settings`, this doesn't work anymore in Nix 2.1 and is therefore incompatible to Nix 2.0 on an API level. To resolve this, the flag `isGreaterNix20` parses the version string of `pkgs.nix` and applies a patch if nix.version<=2.0. Furthermore the Hydra build with Nix 2.1 requires `boost` as build input which is not needed for Nix 2.0. To avoid unnecessary increase in the closure size this library will only used as build input for nix.version>2.0. * Fixed the NixOS test for `hydra`: disabled binary cache to allow sandbox builds (otherwise it would query `cache.nixos.org` during the Hydra build inside the test). Additionally the trivial.nix jobset required simplification (as done in NixOS/hydra, e.g. tests/api-test.nix) as bash is not available in the build sandbox as builder (even when adding pkgs.bash to systemPackages). The easiest workaround to confirm a the functionality of a jobset without importing nixpkgs is to use the default shell /bin/sh which is mounted from `pkgs.busybox` into the build env (https://github.com/NixOS/nixpkgs/pull/44841#discussion_r209751972) in the VM and a named pipe to create $out. Closes #44044
2018-07-20[bot] nixos/*: remove unused arguments in lambdasvolth
2018-06-06nixos/tests/hydra: build a trivial derivationAntoine Eiche
A script is used to create a project, and configure a jobset. This jobset fetches a local file containing a trivial Nix expression. The test script makes sure this derivation has been successfully built by Hydra.