3
0
Fork 0
forked from mirrors/nixpkgs
nixpkgs/nixos/doc/manual
Maximilian Bosch bd5324c4fc
hydra: 2020-02-06 -> 2020-03-{24,27}
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
2020-03-28 23:33:25 +01:00
..
administration Revert "nixos/doc: re-format" 2019-09-19 19:17:30 +02:00
configuration nixos/doc/matrix-synapse: refactor 2020-03-16 10:39:42 +01:00
development nixos release process: use rev-list --count like Hydra does. 2020-02-22 09:28:03 -05:00
installation services/misc/nixos-manual.nix: Remove 2020-03-24 15:25:20 +01:00
release-notes hydra: 2020-02-06 -> 2020-03-{24,27} 2020-03-28 23:33:25 +01:00
.gitignore
default.nix nixos manual: have a toc for each part and chapter 2019-10-30 10:25:09 +01:00
Makefile nixos/doc/manual: Fix Makefile 2019-09-06 12:40:06 +02:00
man-configuration.xml nixos/doc: fix manpage format 2019-10-05 15:55:49 +00:00
man-nixos-build-vms.xml nixos/doc: fix manpage format 2019-10-05 15:55:49 +00:00
man-nixos-enter.xml nixos/doc: fix manpage format 2019-10-05 15:55:49 +00:00
man-nixos-generate-config.xml nixos/doc: fix manpage format 2019-10-05 15:55:49 +00:00
man-nixos-install.xml nixos/docs: Fix nixos-install --system command 2020-01-15 05:39:12 +01:00
man-nixos-option.xml Merge pull request #75439 from Ma27/submodule-fixes-for-nixos-option 2020-02-01 10:00:59 +01:00
man-nixos-rebuild.xml nixos-{rebuild,container}: Use flakeref#attrpath syntax 2020-02-05 23:15:18 +01:00
man-nixos-version.xml nixos-version: Add --json flag and show system.configurationRevision 2020-02-05 23:15:18 +01:00
man-pages.xml nixos/doc+manual: update copyright year range end 2019->2020 2020-01-14 07:01:39 -06:00
manual.xml nixos manual: move preface into own file 2019-10-30 10:25:09 +01:00
preface.xml nixos manual: refer to nix and nixpkgs manuals 2019-10-30 10:25:09 +01:00
README
shell.nix

To build the manual, you need Nix installed on your system (no need
for NixOS). To install Nix, follow the instructions at

    https://nixos.org/nix/download.html

When you have Nix on your system, in the root directory of the project
(i.e., `nixpkgs`), run:

    nix-build nixos/release.nix -A manual.x86_64-linux

When this command successfully finishes, it will tell you where the
manual got generated.