Commit Graph

79 Commits

Author SHA1 Message Date
tv a6c7ecd8ba populate: add passage source type 2024-01-11 11:23:11 +01:00
lassulus 59aa5d0e41 populate pass: calculate hash for each symlink
this fixes folders with symlinks not getting updated if the symlinked
file is in another subfolder of the pass repo
2023-03-13 10:49:57 +01:00
tv 3ebbfc6261 rebuild: set NIX_PATH like everywhere else 2022-09-07 11:56:51 +02:00
tv e5c13343a6 withNixOutputMonitor: run shell with know Nix path 2022-09-07 11:55:35 +02:00
tv 6ee1d00b92 runShell: admit non-posix-compatible shells 2022-09-07 11:17:39 +02:00
tv 625bd446dd krops writeDeploy: add useNixOutputMonitor parameter 2022-08-23 14:16:39 +02:00
tv 3aa04be96f Merge remote-tracking branch 'prism/master' 2022-07-26 21:03:55 +02:00
lassulus 117b0b32cd krops writeTest: make trace optional 2022-07-26 21:02:05 +02:00
tv 9c49e9aa24 krops writeDeploy: add operation parameter 2022-07-16 16:50:32 +02:00
tv 89e5e67659 populate git: remove trailing spaces 2022-02-12 10:07:17 +01:00
tv 824aa36b2a populate git: remove non-worktree target 2022-02-12 10:06:34 +01:00
Erik Arvstedt 9fc8cbf8e8 target: use default port from SSH config
This is the expected behavior.
The SSH config is also implicitly used for other SSH-related settings.
2021-11-20 14:28:54 +01:00
tv 05f0d3b5c1 populate file: isDerivation -> isStorePath 2021-10-26 19:36:12 +02:00
tv 6ef8900af4 populate file: admit derivations 2021-10-26 13:52:25 +02:00
tv 0fc8f1b2a6 populate: add rsyncDefaultConfig 2021-10-26 13:52:25 +02:00
lassulus d80cb74c74 runShell/writeCommand: add allocateTTY argument 2021-10-26 13:51:18 +02:00
lassulus c1b24328c4 krops writeDeploy: deprecate fast parameter 2021-10-26 13:51:07 +02:00
lassulus 438d3f8738 populate pass: don't decrypt .gpg-id 2021-02-16 19:29:41 +01:00
lassulus 9eb2c2d0d6 populate pass: make git optional again 2021-01-17 17:18:05 +01:00
Simon Bruder 804c79a14d Make pass source follow symlinks 2020-12-15 22:15:37 +01:00
Martin Potier b83fd5c682
Add flag to nixos-rebuild
In the case we need sudo for the remote target, the flag
`--use-remote-sudo` must be passed if the target's ssh user is not root.

If target's ssh user is root, it doesn't hurt to use sudo.
2020-11-20 17:04:30 +02:00
Enno Lohmeier 54eb1c89cf add `shallow` option to git source type 2020-07-02 16:43:42 +02:00
Jörg Thalheim bdf56191e2
fix local deployment with sudo 2020-06-22 15:40:34 +01:00
tv 44e8dd5cea treewide: harmonize ssh calls 2020-06-08 23:12:14 +02:00
tv 486300fb35 krops runCommand: derive script name from command 2020-06-08 22:59:42 +02:00
tv 67132ed53f krops remoteCommand: don't ssh if target is local 2020-06-08 22:59:37 +02:00
Erik Arvstedt 2cafddd78d add target.extraOptions 2020-04-18 23:05:18 +02:00
tv ed9fc66582
Merge pull request #15 from nyantec/feature/filters
support for include filters
2020-02-18 14:36:30 +01:00
Jörg Thalheim d51f353cb3
use writers from nixpkgs
This makes the evaluation of krops pure (no import from derivation)
and makes it faster since the fetchGit result might be garbage collected.
2020-02-17 18:05:48 +00:00
Milan Pässler 56d4dc28b3 support for include filters
- Added a new option for `file` sources, which allows to specify a list
  of `include` and `exclude` filters
- Added a new option for `file` sources, which allows to disable the
  `--delete-excluded` behaviour.
2020-02-03 16:37:55 +01:00
Jörg Thalheim ea7e0c3a35 writeDeploy: add crossDeploy argument 2019-12-30 14:15:08 +01:00
Jörg Thalheim 402c9cac25 writeDeploy: add support for build hosts
This allows to evaluate & build the system on the dedicated build host,
from which the build artifacts are uploaded onto the target machine.
2019-12-30 14:15:08 +01:00
Jörg Thalheim fce5826802 populate: re-add default values for useChecksum/exclude
Turns out, those where required.
2019-12-23 23:18:05 +01:00
Jörg Thalheim fff9b24ec9 populate file: add exclude option 2019-12-23 21:18:35 +01:00
Milan Pässler 01b82ecaf3 ssh: fix mistake with sudo on remote 2019-12-02 11:31:02 +01:00
tv 70fa39607f ssh: support using ssh-configured user
Let ssh use the user configured in its configuration files when the
target user is set to the empty string.

Closes https://github.com/krebs/krops/issues/2
2019-11-29 13:21:04 +01:00
Milan Pässler cd21575333 ssh, rsync: support using sudo on remote
This allows deployment of remote hosts without having ssh access to the
root user. Passwordless sudo is recommended since krops will use
multiple ssh sessions and the password will not be remembered.

Closes https://github.com/krebs/krops/issues/3
2019-11-29 12:56:03 +01:00
lassulus 2dc1725309 krops: add writeCommand 2019-10-23 20:50:41 +02:00
lassulus 3d59510ac2 krops: add remoteCommand, use in build & rebuild 2019-10-23 20:26:33 +02:00
lassulus 6d1c35ea2c writeDeploy: add fast option 2019-10-23 20:14:23 +02:00
lassulus 8f44460003 populate git: add fetchAlways option 2019-08-08 17:12:48 +02:00
tv 14a54637ce pkgs write{Deploy,Test}: allow backup of target 2019-07-16 22:23:50 +02:00
tv 79aa2c6a88 populate: support backupping target 2019-07-16 22:13:26 +02:00
tv 42e8085b95 populate: allow directories as sentinel 2019-07-16 22:13:26 +02:00
tv 1921a71a75 pkgs: allow to overlay all the things 2019-07-16 22:13:26 +02:00
lassulus f2348bfbc2 krops: add dry-rebuild before nix build 2019-07-16 20:56:01 +02:00
lassulus 10fd67a6a2 krops build: fix name 2019-07-16 20:55:29 +02:00
lassulus ee41207df1 writeDeploy: fancy output with nix build 2019-04-28 14:25:06 +02:00
tv 219e5aa008 pkgs nix-writers: 3.0.0 -> 3.4.0 2019-04-02 20:12:13 +02:00
tv 5dd80e884a pkgs.krops.rebuild: allow passing arbitrary args 2019-02-26 19:50:53 +01:00