NixOS / nixops

NixOps is a tool for deploying to NixOS machines in a network or cloud.
https://nixos.org/nixops
GNU Lesser General Public License v3.0
1.78k stars 363 forks source link

Cannot build when targetEnv = "container" #715

Open FPtje opened 6 years ago

FPtje commented 6 years ago

How to reproduce

Expected output

Some indication that the build succeeded

Actual output

building all machine configurations...
error: The option value `users.users.root.openssh.authorizedKeys.keys.[definition 1-entry 1]' in `/nix/store/ya9m2hcc2gs7q3815g9fk0ngyvhry3z8-sya4m8zykgrbk598mn50hv1d2na93jvz-nixpkgs-1454628d5776ee53ad86e2e00c363f83ceaf4cde/nixos/modules/config/users-groups.nix' is not a string.
(use ‘--show-trace’ to show detailed location information)
error: unable to build all machine configurations

Suspected cause

This line: https://github.com/NixOS/nixops/blob/master/nixops/backends/container.py#L133

I haven't much looked into why, but that line sets that option.

Meta info:

Nixpkgs version: revision 1454628d5776ee53ad86e2e00c363f83ceaf4cde Nixpkgs repo: https://github.com/NixOS/nixpkgs-channels.git

onny commented 2 years ago

Is this backend still present in NixOps 2.0? I get following error when trying to use this backend:

$ nixops deploy -d pi-nix-testing --include nix-database
Traceback (most recent call last):
  File "/nix/store/2nqfdkyx8c0wpwqm26p3pvdy0fzkpz4m-python3.9-nixops-2.0.0/bin/.nixops-wrapped", line 9, in <module>
    sys.exit(main())
  File "/nix/store/ygqwlafzkqrkwq8vfjxwhbipc3xh1j0h-python3-3.9.6-env/lib/python3.9/site-packages/nixops/__main__.py", line 56, in main
    args.op(args)
  File "/nix/store/ygqwlafzkqrkwq8vfjxwhbipc3xh1j0h-python3-3.9.6-env/lib/python3.9/site-packages/nixops/script_defs.py", line 688, in op_deploy
    depl.deploy(
  File "/nix/store/ygqwlafzkqrkwq8vfjxwhbipc3xh1j0h-python3-3.9.6-env/lib/python3.9/site-packages/nixops/deployment.py", line 1352, in deploy
    self.run_with_notify("deploy", lambda: self._deploy(**kwargs))
  File "/nix/store/ygqwlafzkqrkwq8vfjxwhbipc3xh1j0h-python3-3.9.6-env/lib/python3.9/site-packages/nixops/deployment.py", line 1341, in run_with_notify
    f()
  File "/nix/store/ygqwlafzkqrkwq8vfjxwhbipc3xh1j0h-python3-3.9.6-env/lib/python3.9/site-packages/nixops/deployment.py", line 1352, in <lambda>
    self.run_with_notify("deploy", lambda: self._deploy(**kwargs))
  File "/nix/store/ygqwlafzkqrkwq8vfjxwhbipc3xh1j0h-python3-3.9.6-env/lib/python3.9/site-packages/nixops/deployment.py", line 1137, in _deploy
    self.evaluate_active(include, exclude, kill_obsolete)
  File "/nix/store/ygqwlafzkqrkwq8vfjxwhbipc3xh1j0h-python3-3.9.6-env/lib/python3.9/site-packages/nixops/deployment.py", line 1078, in evaluate_active
    self.evaluate()
  File "/nix/store/ygqwlafzkqrkwq8vfjxwhbipc3xh1j0h-python3-3.9.6-env/lib/python3.9/site-packages/nixops/deployment.py", line 437, in evaluate
    defn = _create_definition(name, cfg, cfg["targetEnv"])
  File "/nix/store/ygqwlafzkqrkwq8vfjxwhbipc3xh1j0h-python3-3.9.6-env/lib/python3.9/site-packages/nixops/deployment.py", line 1670, in _create_definition
    raise nixops.deployment.UnknownBackend(
nixops.deployment.UnknownBackend: unknown resource type ‘container’