FAQ/Bare Metal Deployment: Difference between revisions
imported>Grahamc mNo edit summary |
Phanirithvij (talk | contribs) m fix nix stable manual link |
||
| (2 intermediate revisions by 2 users not shown) | |||
| Line 1: | Line 1: | ||
NixOS's [https://nixos.org/nixos/manual/index.html#sec-writing-modules module system] | Non-Nix bare metal deployments are typically maintained with a "converging" configuration manager like Puppet or Chef. NixOS's [https://nixos.org/nixos/manual/index.html#sec-writing-modules module system] | ||
replaces these tools for per-host configuration mechanisms, | |||
like declaring various services, monitoring options, and configuration | like declaring various services, monitoring options, and configuration | ||
file contents. | file contents. This makes the installation and configuration of your deployment fully declarative. | ||
This module system can be used to easily create virtual machines | This module system can also be used to easily create virtual machines | ||
equivalent to the finally deployed image. This VM can then be used to | equivalent to the finally deployed image. This VM can then be used to | ||
run testing to ensure the service would behave as required. | run testing to ensure the service would behave as required. | ||
Hydra is the Nix ecosystem's build | Hydra is the Nix ecosystem's build server, which can provide a nice | ||
breakdown of dependencies and more naturally (when compared to Jenkins | breakdown of dependencies and more naturally (when compared to Jenkins | ||
etc.) understands the robust build dependency tree inherent to Nix's | etc.) understands the robust build dependency tree inherent to Nix's | ||
| Line 21: | Line 19: | ||
[https://hydra.nixos.org/job/nixos/trunk-combined/tested#tabs-constituents https://hydra.nixos.org/job/nixos/trunk-combined/tested#tabs-constituents]. | [https://hydra.nixos.org/job/nixos/trunk-combined/tested#tabs-constituents https://hydra.nixos.org/job/nixos/trunk-combined/tested#tabs-constituents]. | ||
The VMs that are | The VMs that are built from a machine's configuration can easily be | ||
integrated with [https://nixos.org/nixos/manual/index.html#sec-nixos-tests NixOS's test infrastructure] | integrated with [https://nixos.org/nixos/manual/index.html#sec-nixos-tests NixOS's test infrastructure] | ||
and Hydra to automatically verify package updates and system | and Hydra to automatically verify package updates and system | ||
| Line 27: | Line 25: | ||
These integration tests and builds can be robustly distributed across | These integration tests and builds can be robustly distributed across | ||
a build fleet using [https:// | a build fleet using [https://nix.dev/manual/nix/stable/advanced-topics/distributed-builds Nix's built in distributed build mechanism]. | ||
Unlike Jenkins and many other CI tools, the remote builders require no | Unlike Jenkins and many other CI tools, the remote builders require no | ||
additional setup or specific software installed, beyond the standard | additional setup or specific software installed, beyond the standard | ||