Commit Graph

520 Commits

Author SHA1 Message Date
Joey Hess 6a906c8a4c typo 2014-12-07 12:50:40 -04:00
Joey Hess 52a83a8911 enable shadow passwords
I have seen weird almost boot failures when they're disabled, including a
segfault.
2014-12-06 15:39:02 -04:00
Joey Hess 7983046cd5 update 2014-12-06 15:28:30 -04:00
Joey Hess bdbf787e2c keep and use Reboot.now 2014-12-06 13:32:53 -04:00
Joey Hess 29442f222e Reboot.atEnd 2014-12-06 13:21:19 -04:00
Joey Hess 62697c7b7f reboot at end of propellor run when clean os has been installed 2014-12-06 06:41:21 -04:00
Joey Hess fcff7762e3 endAction can be used to register an action to run once propellor has successfully run on a host. 2014-12-06 06:34:32 -04:00
Joey Hess c97dd0d708 spelling typo 2014-12-05 19:33:34 -04:00
Joey Hess a7e71faaaa
forgot to add new Mount lib 2014-12-05 17:54:29 -04:00
Joey Hess 5ae6a302df some comments 2014-12-05 17:44:09 -04:00
Joey Hess 00ab240164 fix install of debootstrap from source 2014-12-05 16:48:52 -04:00
Joey Hess 527975dffe hasSomePassword and hasPassword now check to make sure shadow passwords are enabled. 2014-12-05 16:33:23 -04:00
Joey Hess bf9284d05c I have now successfully used propellor to convert a Fedora system into a bootable and fully working Debian system 2014-12-05 16:22:11 -04:00
Joey Hess 97e9433f1b rollback if renameing fails
This avoids leaving the system in a broken state where some directories
have been renamed away any others not.

Future work: If the rename list contains (foo, bar) and (newfoo,foo),
reorder the list to gather those two actions together to minimize
the amount of time that foo is missing. In case of power loss or something.
2014-12-05 12:50:01 -04:00
Joey Hess 4be893f0bf more improvements to takeover 2014-12-04 17:34:47 -04:00
Joey Hess f1fd75c9ec more work on OS takeover 2014-12-04 17:11:15 -04:00
Joey Hess f78c2f16d1
update name of libgnutls dev package 2014-12-03 19:05:36 -04:00
Joey Hess c9d09afafa
Run apt-cache policy with LANG=C. 2014-12-01 11:59:27 -04:00
Joey Hess 4c2eac2d3c
remove -i, seems not needed and may be causing problem 2014-11-27 19:10:39 -04:00
Joey Hess 9500e9bb81
added more debugging 2014-11-27 17:55:56 -04:00
Joey Hess 7ddb862176
propellor spin 2014-11-27 17:51:41 -04:00
Joey Hess 5a104675e4
avoid crash on no propellor.debug setting 2014-11-26 10:51:29 -04:00
Joey Hess e07dc9b1d3
propellor.debug can be set in the git config to enable more persistent debugging output. 2014-11-25 18:55:12 -04:00
Félix Sipma 7d0f79a0c7 Group: preferred style
Signed-off-by: Félix Sipma <felix.sipma@no-log.org>
2014-11-25 13:12:56 -04:00
Joey Hess 40374c10de
cron.runPropellor now runs propellor, rather than using its Makefile. This is more robust.
Particularly, the Makefile would try to build propellor if there were
updates, but if this build failed because a bad commit was pushed, it would
abort w/o pulling any new fixed commits.

Anyway, it's better to move away from using the makefile when possible as
it's just for bootstrapping, and also I would like to make "make" not
default to running propellor as that can be confusing behavior.

(I can't change that yet; needed for upgrades. Should be fine to change
after several more releases, or maybe a year..)
2014-11-25 11:33:45 -04:00
Joey Hess 934171e2ea rename 2014-11-24 00:52:46 -04:00
Joey Hess 8d1814a884 move property to ssh module 2014-11-24 00:51:36 -04:00
Joey Hess 9ac4e94625 oops 2014-11-24 00:50:48 -04:00
Joey Hess ccdbf0026d more work; builds now 2014-11-24 00:40:53 -04:00
Joey Hess f85026da7f better property names 2014-11-23 19:49:53 -04:00
Joey Hess 3ef6e352c3 one more merge test
--allow-empty added to commit, because the spins could all be empty
2014-11-23 18:51:07 -04:00
Joey Hess 9d975e9ee4 add --merge 2014-11-23 18:48:52 -04:00
Joey Hess baba668033 hasSomePassword and hasPassword now default to using the name of the host as the Context for the password. To specify a different context, use hasSomePassword' and hasPassword' (API change) 2014-11-23 16:40:21 -04:00
Joey Hess d8624e2e5d WIP 2014-11-23 16:12:39 -04:00
Joey Hess 0ea0f7f4de --spin can be passed multiple hosts, and it will provision each host in turn.
Note that if it fails to spin a host, it will stop. I think this is better
than continuing to the next, because there might be a reason to spin hosts
in some specific order (ie, update dns first and then use it).
2014-11-23 15:17:57 -04:00
Joey Hess 3c952a0de9 comment 2014-11-23 14:40:28 -04:00
Félix Sipma 226981cda4 Git: bareRepo
Signed-off-by: Félix Sipma <felix.sipma@no-log.org>
2014-11-23 14:39:01 -04:00
Félix Sipma 6aa21366d5 Group properties
Signed-off-by: Félix Sipma <felix.sipma@no-log.org>
2014-11-23 14:37:49 -04:00
Joey Hess 69eace8e9a preferred style 2014-11-23 14:37:37 -04:00
Félix Sipma f4e06ae778 User: hasGroup
Signed-off-by: Félix Sipma <felix.sipma@no-log.org>
2014-11-23 14:37:10 -04:00
Joey Hess 5fefb161c3
propellor spin 2014-11-22 22:37:25 -04:00
Joey Hess ca09087caf
propellor spin 2014-11-22 22:24:09 -04:00
Joey Hess 81e52f1e14 update 2014-11-22 22:13:00 -04:00
Joey Hess 96ecbaad25 pute full path to bin/propellor inside shim 2014-11-22 22:10:53 -04:00
Joey Hess 7c5188b202
propellor spin 2014-11-22 22:01:19 -04:00
Joey Hess 5360e466d3 reorg 2014-11-22 21:50:49 -04:00
Joey Hess cc8babccc8
propellor spin 2014-11-22 21:37:39 -04:00
Joey Hess 1d5d911aa0
propellor spin 2014-11-22 21:30:50 -04:00
Joey Hess 50b6e37790
propellor spin 2014-11-22 21:10:35 -04:00
Joey Hess 1338f4effd don't remove old localdir before tarball unpack
it may get messy if old stuff is left, but there is state in there
2014-11-22 20:42:31 -04:00
Joey Hess 58b5de7802 Revert "avoid removing whole localdir every time the precompiled tarball is uploaded"
This reverts commit 40bec41f56.
2014-11-22 20:42:20 -04:00
Joey Hess 40bec41f56 avoid removing whole localdir every time the precompiled tarball is uploaded
There's some state in there..

Moved it to a shim subdir, which can be deleted and the tarball unpacked to
recreate it.
2014-11-22 20:35:46 -04:00
Joey Hess 868d7cdcb5 avoid loop after uploading precompiled tarball
The localdir still has no .git repo, so it looped.
2014-11-22 20:29:27 -04:00
Joey Hess 239581c759 reorg 2014-11-22 20:17:46 -04:00
Joey Hess eb946f109b look for /usr/local/propellor/.git to know if it's fully deployed
When propellor is deployed by uploading the binary, there's no git repo, so
each spin needs to re-upload it to get any config changes. This should be
rare since this is only intended to be used when taking over a host and
getting it properly set up from source, but it still needs to be supported.
2014-11-22 20:02:44 -04:00
Joey Hess 9a8fcf80bb Hostname parameters not containing dots are looked up in the DNS to find the full hostname. 2014-11-22 19:58:35 -04:00
Joey Hess 95f78a0586
propellor spin 2014-11-22 17:22:11 -04:00
Joey Hess aa986724a2
propellor spin 2014-11-22 17:16:25 -04:00
Joey Hess a4edc404f0
propellor spin 2014-11-22 16:20:02 -04:00
Joey Hess 02e0fac683
propellor spin 2014-11-22 16:17:39 -04:00
Joey Hess cb94e7484e
propellor spin 2014-11-22 16:14:20 -04:00
Joey Hess 7ed9f70504
propellor spin 2014-11-22 16:12:53 -04:00
Joey Hess 6be56755ee
propellor spin 2014-11-22 16:10:46 -04:00
Joey Hess 392a0d3c1c
propellor spin 2014-11-22 16:06:44 -04:00
Joey Hess 6d13790afa
propellor spin 2014-11-22 15:58:09 -04:00
Joey Hess 40339a7fd8
propellor spin 2014-11-22 15:54:31 -04:00
Joey Hess 97931fe670
propellor spin 2014-11-22 15:50:14 -04:00
Joey Hess 395f311e1e
propellor spin 2014-11-22 15:48:17 -04:00
Joey Hess 615799dbcc
propellor spin 2014-11-22 15:19:20 -04:00
Joey Hess ef883cbbe8 still do peer-to-peer git push when there are no git remotes 2014-11-22 15:18:30 -04:00
Joey Hess 151aadd4e2
propellor spin 2014-11-22 15:11:24 -04:00
Joey Hess 0b9164e286
propellor spin 2014-11-22 15:01:08 -04:00
Joey Hess fdde4d91c7
propellor spin 2014-11-22 13:48:16 -04:00
Joey Hess 8e5551c925 avoid unncessary apt-get upgrade 2014-11-22 13:44:25 -04:00
Joey Hess fd3335e40e --via implemented 2014-11-22 12:57:07 -04:00
Joey Hess e0c2d6a73a comment 2014-11-22 02:04:01 -04:00
Joey Hess 128e16472a compress tarball
11 mb -> 4 mb
2014-11-22 01:13:53 -04:00
Joey Hess c0662e6258 comment 2014-11-22 00:52:59 -04:00
Joey Hess cd6ca049b8 cleanup 2014-11-22 00:50:56 -04:00
Joey Hess ea058a5f9f remove test hack 2014-11-22 00:47:26 -04:00
Joey Hess 5d6e1a27a5
propellor spin 2014-11-22 00:46:07 -04:00
Joey Hess 0d65fdeb1d
propellor spin 2014-11-22 00:44:13 -04:00
Joey Hess 083b82d810
propellor spin 2014-11-22 00:36:16 -04:00
Joey Hess 1af398d33e
propellor spin 2014-11-22 00:35:14 -04:00
Joey Hess f1fdd6f678
propellor spin 2014-11-22 00:34:34 -04:00
Joey Hess e5135c1948
propellor spin 2014-11-22 00:32:04 -04:00
Joey Hess 99e0a5fea7
propellor spin 2014-11-22 00:27:35 -04:00
Joey Hess 7fd338f96f
propellor spin 2014-11-22 00:25:00 -04:00
Joey Hess f62d2fb183 propellor --spin can now deploy propellor to hosts that do not have git, ghc, or apt-get. This is accomplished by uploading a fairly portable precompiled tarball of propellor. 2014-11-22 00:22:19 -04:00
Joey Hess 6eb64d56e3 avoid setting title when not at console 2014-11-21 23:33:39 -04:00
Joey Hess 0a415a7b41
show last line if it cannot be parsed as a serialized Result 2014-11-21 23:30:40 -04:00
Joey Hess 6cdd37d9ff
propellor spin 2014-11-21 20:53:38 -04:00
Joey Hess b373ffb761 allow disabling nspawn params, and default to bind mounting /etc/resolv.conf 2014-11-21 20:32:32 -04:00
Joey Hess 96c4890d89
propellor spin 2014-11-21 20:19:20 -04:00
Joey Hess 6be49197f6 allow configuring systemd-nspawn parameters 2014-11-21 20:09:33 -04:00
Joey Hess 6c92f1034f split out info types 2014-11-21 18:55:33 -04:00
Joey Hess 6e8b28cd3c
propellor spin 2014-11-21 17:11:26 -04:00
Joey Hess 33e9b10c19 typo 2014-11-21 16:02:10 -04:00
Joey Hess f6afeb889f lock down chroot perm 2014-11-21 16:01:51 -04:00
Joey Hess 9e611d87cd add debootstrap parameters 2014-11-21 15:55:27 -04:00