Enroll
Dev tools
configuration management
SHOW HN2026
How HN took it
16 positive, 14 neutral or asking, 2 mixed, 1 critical, out of 33 comments about the project. Thread score +0.42.
Idea: 11 for, 0 againstExecution: 0 for, 1 against
The thread, comment by comment
Each row is a top-level comment and its replies, in HN's order. Select a cell to open that comment on HN.
positive neutral or mixed critical about another commenter or something else the maker
What HN said
What people liked
Useful for learning Ansible and seeing server state as code.
From 2 comments
This looks like a great way to learn Ansible too. Instead of learning alongside random examples, you can setup your server and see how it would look like in Ansible. Awesome stuff!
bcye on HNWoah, very neat! I may have to add this to the examples in Ansible for DevOps. Great idea, looks like for many cases it will help move hand config into automation.
geerlingguy on HN
Captures forgotten manual changes on long-lived servers.
From 2 comments
This is a fantastic idea. I can imagine using this to pull in any manual changes I might have made to the server because I’m not the most disciplined person.
barbazoo on HNHaha, same! I ran it on a server I've been shepherding along since 2008 and wow, it was insightful, there were even cron jobs it found that I had forgotten about :) If you are…
_mig5 on HN
Objections
Generated Ansible code is harder to read than hand-written roles.
From 1 comment
Thanks for the comment and questions! Very wise. Let me break it down as to what harvest does: 1) Detects the OS and its package backend (e.g dpkg vs rpm etc) 2) Detects what…
_mig5 on HN
Can produce overwhelming output with many roles.
From 2 comments
That's a really cute looking tool. I ran it without installing via: ``` uv tool run enroll single-shot --harvest ./harvest --out ./ansible ``` It generated almost a thousand…
stevekemp on HNYup - it can be pretty overwhelming, it depends on what it detected on your system! The state.json will usually explain why it 'harvested' something (perhaps it was because it…
_mig5 on HN
Requests
Support for sudo password prompts over SSH.
From 2 comments
I've been looking for something like this, awesome! Is it expected that it does not allocate a TTY for sudo password prompts when connecting to a remote machine via SSH? How…
slhck on HNAh, this is not a problem for me on my remote hosts. I'm guessing this comes down to a sudoers policy on certain distros (redhat-like ones perhaps). I'm about to make a new…
_mig5 on HN
Detect SELinux labels and file ACLs.
From 2 comments
Could it also detect changed package files; if there are per-package-file checksums like with `debsums` and `rpm -V`? Does it check extended filesystem labels with e.g. getfacl…
westurner on HNHi westurner! > Could it also detect changed package files; if there are per-package-file checksums like with debsums and `rpm -V`? Yes, that's exactly what it does. See…
_mig5 on HN
Questions
How does it determine what counts as state beyond packages and services?
From 2 comments
A question I didn't see answered on the Web site or in the comments... How does it determine what is "state"? Packages are easy, you just get a list of those with the package…
bityard on HNThanks for the comment and questions! Very wise. Let me break it down as to what harvest does: 1) Detects the OS and its package backend (e.g dpkg vs rpm etc) 2) Detects what…
_mig5 on HN
Does it handle one-off custom applications?
From 2 comments
Does the playbook generation have support for some totally custom/one-off application? (Eg, not just system/well-known stuff). If so, that would be insane!
indigodaddy on HNIt does! There are several sort of 'catch-alls' in place: 1) stuff in /etc that doesn't belong to any obvious package, ends up in an 'etc_custom' role 2) stuff in /usr/local ends…
_mig5 on HN
Alternatives named
Machinery (SUSE)
From 1 comment
This makes me think of the now defunct https://github.com/SUSE/machinery
nightshift1 on HN
blueprint (DevStructure)
From 1 comment
Indeed! I'm showing my age, but I do remember using this with Puppet and it was one of my inspirations :D (no commits in nearly 13 years, ouch)…
_mig5 on HN
Nix / NixOS
From 2 comments
I wonder if Nix has similar tools, as it is famous for declarative system management, which is quite suitable for server provisioning.
novoreorx on HNpoor man’s nixOS
xyst on HN
cloud-init
From 1 comment
Great questions! OP here, let me answer them below: > How accurate does this tool end up becoming though? Like can I just run some bunch of commands to setup a server and then…
_mig5 on HN