tech-ingolf-wagner-de/content/nixos/krops.md

60 lines
1.6 KiB
Markdown
Raw Normal View History

2018-08-15 15:12:54 +02:00
---
title: "Krops"
date: 2018-08-15T15:06:26+02:00
2018-08-15 15:38:52 +02:00
draft: false
tags:
- krebs
- NixOS
- nixOps
- password-store
2018-08-15 15:12:54 +02:00
---
# Krops = Krebs OPs an alternative to NixOPs
[NixOps](https://nixos.org/nixops/) the official DevOps tool of
[NixOS ](https://nixos.org) is nice, but it has some flaws.
[Krops](https://cgit.krebsco.de/krops/) is an alternative to
[NixOps](https://nixos.org/nixops/) which trying to solve some of theses flaws,
with some very simple concepts.
2018-08-15 15:38:52 +02:00
If you're looking for a good document on how to use
[NixOps](https://nixos.org/nixops/) in the fields,
have a look at
[this excelent article](https://blog.wearewizards.io/how-to-use-nixops-in-a-team).
2018-08-15 15:12:54 +02:00
2018-08-15 15:38:52 +02:00
# Krops vs NixOps feature-crunch
2018-08-15 15:12:54 +02:00
2018-08-15 15:38:52 +02:00
## Krops
2018-08-15 15:12:54 +02:00
2018-08-15 15:38:52 +02:00
### Pro
* very lightweight, it is just a lib
* precise versioning of [NixPkgs](https://github.com/NixOS/nixpkgs)
you can specify nixpkgs commit/branch/tag you want to roll out on which machine.
( your server runs `18.03` and your desktop `unstable` )
* native [password-store](https://www.passwordstore.org/) support.
* You can rerun you deployment on the machine itself using `nixos-rebuild switch`.
* No Database needed.
* Build/Download happens on the target system.
### Con
* you need to have git installed (yeah not a real con)
* not as good documented as NixOps.
* works only on NixOs *(?)*
## NixOps
### Pro
* well documented
### Con
* quite heavy
* host channel is roled out on servers ( not possible to have different channels on different servers )
* can't just run `nixos-rebuild switch` on the target machines.
* you need a database (for some reason).
* Build/Download happens on deploying machine, which is bad when you have a bad internet-connection.
2018-08-15 15:12:54 +02:00