[{"data":1,"prerenderedAt":306},["ShallowReactive",2],{"project-5324445":3},{"id":4,"name":5,"line":6,"line_source":7,"title":8,"url":9,"domain":10,"maker":11,"posted_at":12,"year":13,"points":14,"comments":15,"rank_in_year":16,"shown_in_year":17,"top":18,"tier":19,"category":20,"subcategory":21,"format":22,"keywords":23,"reception":28,"sentiment":29,"stance_mix":30,"scored_comments":35,"aspects":36,"strip":41,"post_text":43,"what":44,"said":83,"maker_in_thread":166,"shape":175,"grid":180,"attempts":268,"same_week":269,"maker_shows":297,"maker_hidden":298,"reader_version":299,"card":300},"5324445","Slaughter","Perl-based server-management tool","title","Show HN: Perl-based server-management tool","http:\u002F\u002Fwww.steve.org.uk\u002FSoftware\u002Fslaughter\u002Fguide\u002F","steve.org.uk","stevekemp",1362491895,2013,63,39,404,1739,24,"notable","infrastructure","configuration management","cli",[21,24,25,26,27],"server automation","perl","cfengine","serverless","mixed",-0.111,{"positive":31,"neutral":32,"mixed":33,"critical":34},2,5,0,4,11,{"idea":37,"design":39,"docs":40},{"positive":38,"critical":33},1,{"positive":33,"critical":31},{"positive":33,"critical":38},[42,33,33,33,42,33,32,33,38,33,32,33,42,33,33,33,33,33,33,33,33,33,33,33,33,42,33,38,33,42,33,38,33,38,33,33,33,33,33],3,null,{"problem":45,"audience":43,"pricing":43,"motivation":59,"time_to_build":43,"stack":64,"openness":80,"stage":81,"team_size":82},{"value":46,"source":47,"evidence":48},"Keeping servers configured and reverting manual changes via scheduled policies","maker",[49,52,56],{"id":50,"by":11,"text":51},"5325338","It will let you write policies which are applied each time it runs. If you schedule it to run hourly it will do the same kind of work as puppet\u002Fcfengine\u002Fchef would do - providing…",{"id":53,"by":54,"text":55},"5330145","jcmcken","Puppet definitely has its own pains, but I feel like I'd quickly reach a block trying to use this tool, and end up either writing more outside of Slaughter than in it or just…",{"id":57,"by":11,"text":58},"5330163","I agree entirely, as the author one of the goals was to be \"serverless\". That means there is no handling for TLS\u002Fcerts - it is delegated to the transports. (So you can get…",{"value":60,"source":47,"evidence":61},"Scheduled policies for own hosts; serverless design goal",[62,63],{"id":50,"by":11,"text":51},{"id":57,"by":11,"text":58},[65,73],{"value":66,"source":47,"evidence":67},"Perl",[68,70],{"id":69},"post",{"id":71,"by":11,"text":72},"5325173","Perl has traditionally been a sysadmin-glue language, so I think it is worth mentioning in that context. Sure it might not be the new-shiny, but it still works, and thanks to…",{"value":74,"source":47,"evidence":75},"SSH transport",[76,79],{"id":77,"by":11,"text":78},"5330153","Reasonably good summary. I'd say the transport-flexibility is a fresh-take, the supplied primitives are directly inspired by CFEngine 2.x, so in terms of complexity available to…",{"id":57,"by":11,"text":58},"open_source","unknown","solo",{"praise":84,"objections":97,"requests":117,"questions":126,"alternatives":141},[85,93],{"value":86,"source":87,"evidence":88},"Looks rather nice; plans to try it for Debian provisioning","commenter",[89],{"id":90,"by":91,"text":92},"5326759","meaty","I actually tripped over this a couple of days ago after getting frustrated with puppet's rubyness (I hate ruby with a passion). Looks rather nice. Will try it out next time I do…",{"value":94,"source":87,"evidence":95},"Transport flexibility is a fresh take",[96],{"id":77,"by":11,"text":78},[98,103,110],{"value":99,"source":87,"evidence":100},"Lacks pre-made recipes and Puppet-style features like declarative resources and reporting",[101,102],{"id":53,"by":54,"text":55},{"id":77,"by":11,"text":78},{"value":104,"source":87,"evidence":105},"Inconsistent primitive naming in the DSL",[106],{"id":107,"by":108,"text":109},"5327458","keymone","what is the reason behind inconsistencies like !PackageInstalled => InstallPackage but AppendIfMissing? Why not InstallIfMissing? Or !LinePresent => AddLine? i don't care about…",{"value":111,"source":87,"evidence":112},"Perl mentioned too heavily in the docs",[113],{"id":114,"by":115,"text":116},"5326075","SwellJoe","The mentions of Perl do seem pretty heavy-handed. I'm a Perl developer in the sysadmin space, too (working on Webmin, Virtualmin, and Cloudmin), and I think it's awesome to see…",[118,122],{"value":119,"source":87,"evidence":120},"Declarative resource definitions",[121],{"id":53,"by":54,"text":55},{"value":123,"source":87,"evidence":124},"Reporting and metrics per run",[125],{"id":53,"by":54,"text":55},[127,134],{"value":128,"source":87,"evidence":129},"What differentiates it from other configuration tools",[130],{"id":131,"by":132,"text":133},"5330140","gizzlon","Other than being written in Perl, does anyone know what differentiates slaughther from the other projects out there? Haven't used any of them, but my guess would be: ``` - It's…",{"value":135,"source":87,"evidence":136},"Which license it uses",[137],{"id":138,"by":139,"text":140},"5325225","Surio","Superfluous question, perhaps. What licence are you releasing it on? I read Zed Shaw's essays (rants?) on GPL a while ago. Given that your tool occupies the Server space (as did…",[142,148,152,159],{"value":143,"source":87,"evidence":144},"Ansible",[145],{"id":146,"by":11,"text":147},"5325496","There are tools out there that will configure remote machines, using nothing more than SSH. http:\u002F\u002Fansible.cc\u002F is probably the most popular.",{"value":149,"source":87,"evidence":150},"Puppet",[151],{"id":53,"by":54,"text":55},{"value":153,"source":87,"evidence":154},"Rex",[155],{"id":156,"by":157,"text":158},"5324786","jamespitts","Awesome work... What are your impressions of rex? Slaughter occupies a different part of the ecosystem (specifically that slaughter has policies) but do you see possible…",{"value":160,"source":87,"evidence":161},"Pushy",[162],{"id":163,"by":164,"text":165},"5328546","axw","I haven't seen that before. Thanks, it brought a smile to my face. I made this a few years ago: https:\u002F\u002Fgithub.com\u002Faxw\u002Fpushy Pushy is Python-based, not PERL-based, but otherwise…",{"comments":167,"answered":168,"key":169},13,9,[170,171,172],{"id":146,"text":147},{"id":77,"text":78},{"id":173,"text":174},"5326896","I have to admit I'm not a huge fan of Puppet, though I've used it a little recently and I've been a regular CFEngine (2.x) user for the past few years. I hope it is useful, but…",{"commenters":176,"max_depth":177,"maker_replies":167,"first_comment_mins":178,"lifespan_hours":179},16,8,65,25,[181,185,187,190,191,192,194,196,198,200,202,204,206,208,210,212,216,218,220,222,224,226,228,230,234,236,240,241,242,244,247,249,254,255,257,260,262,264,266],[182,33,42,183,184,33],"5325464","project\u002Fneutral\u002Fidea","zengargoyle",[146,33,33,186,11,38],"commenter\u002Fneutral\u002Fidea",[188,33,33,186,189,33],"5326311","mst",[163,33,33,186,164,33],[131,38,42,183,132,33],[77,38,33,193,11,38],"project\u002Fmixed\u002Fidea",[90,31,32,195,91,33],"project\u002Fpositive\u002Fnone",[173,31,33,197,11,38],"commenter\u002Fneutral\u002Fnone",[53,42,38,199,54,33],"project\u002Fcritical\u002Fdesign",[57,42,33,201,11,38],"project\u002Fneutral\u002Fdesign",[156,34,32,203,157,33],"project\u002Fpositive\u002Fidea",[205,34,33,183,11,38],"5324812",[138,32,42,207,139,33],"project\u002Fneutral\u002Fnone",[209,32,33,207,11,38],"5325280",[211,32,33,197,139,33],"5325676",[213,32,33,214,215,33],"5325509","other\u002Fneutral\u002Fnone","papsosouid",[217,32,33,214,139,33],"5325614",[219,32,33,214,215,33],"5325902",[221,32,33,214,115,33],"5326048",[223,32,33,214,215,33],"5326123",[225,32,33,214,139,33],"5329278",[227,32,33,214,132,33],"5330087",[229,32,33,214,215,33],"5331552",[231,232,33,197,233,33],"5329952",6,"jlsync",[235,232,33,186,11,38],"5329977",[237,238,42,183,239,33],"5325286",7,"BCM43",[50,238,33,183,11,38],[107,177,38,199,108,33],[243,177,33,201,11,38],"5327579",[245,168,42,207,246,33],"5325062","ionforce",[248,168,33,207,11,38],"5325075",[250,251,38,252,253,33],"5325165",10,"project\u002Fcritical\u002Fnone","davidw",[71,251,33,197,11,38],[114,251,38,256,115,33],"project\u002Fcritical\u002Fdocs",[258,251,33,259,11,38],"5326234","project\u002Fneutral\u002Fdocs",[261,251,33,214,189,33],"5326320",[263,251,33,197,139,33],"5325233",[265,251,33,197,253,33],"5326849",[267,251,33,207,11,38],"5326908",[],[270,275,280,285,289,293],{"id":271,"name":272,"points":273,"category":274},"5332317","Adrift",858,"games",{"id":276,"name":277,"points":278,"category":279},"5325012","Coffitivity",337,"productivity",{"id":281,"name":282,"points":283,"category":284},"5306155","Tiled Text",332,"dev_tools",{"id":286,"name":287,"points":288,"category":284},"5330804","QR Codify",255,{"id":290,"name":291,"points":292,"category":279},"5318917","Breakpoint.io",150,{"id":294,"name":295,"points":292,"category":296},"5326314","My weekend project, Remojōbo","web_saas",14,false,"v2",{"id":301,"name":5,"line":6,"ai":298,"cat":20,"year":13,"points":14,"comments":15,"rec":28,"s":302,"top":18,"kw":303,"maker":11,"domain":10,"tier":19,"attempts":33,"strip":304,"url":9,"mix":305,"praise":86,"objection":99,"sub":21},5324445,-0.11,[21,24,25,26,27],"300030501050300000000000030103010100000",[31,32,33,34],1794036504547]