tag:blogger.com,1999:blog-6825731201864178309.comments2022-12-04T22:31:50.444-05:00crdlocrdlohttp://www.blogger.com/profile/12125558929574686676noreply@blogger.comBlogger12125tag:blogger.com,1999:blog-6825731201864178309.post-76734977633451395732014-03-24T07:15:54.883-04:002014-03-24T07:15:54.883-04:00You are number one for 'perl doctest' on g...You are number one for 'perl doctest' on google.com. Your module is small and works great. So I was surprised that I couldn't find your code on another platform like cpan. Since I'm quite new to Perl I just put it on GitHub to make it easier to download and modify if somebody likes: https://github.com/mkllnk/PerlDoctestAnonymousnoreply@blogger.comtag:blogger.com,1999:blog-6825731201864178309.post-4201307798600717882012-09-21T17:49:24.972-04:002012-09-21T17:49:24.972-04:00so it is, swapping the . and - works with my simpl...so it is, swapping the . and - works with my simple test case. I've fixed the code in the original post.crdlohttps://www.blogger.com/profile/12125558929574686676noreply@blogger.comtag:blogger.com,1999:blog-6825731201864178309.post-67956937763513894722012-09-21T17:30:21.584-04:002012-09-21T17:30:21.584-04:00The construct
[[:digit:]-.]
is an invalid rege...The construct<br /><br /> [[:digit:]-.]<br /><br />is an invalid regex. What should it be?Randal L. Schwartzhttps://www.blogger.com/profile/15769772519087568807noreply@blogger.comtag:blogger.com,1999:blog-6825731201864178309.post-81160898653900121362012-04-09T20:57:24.941-04:002012-04-09T20:57:24.941-04:00You can make just plain text terminal screencasts ...You can make just plain text terminal screencasts with http://shelr.tv/<br /><br />Records can be replayed on the web or in your own terminal.Anonymoushttps://www.blogger.com/profile/14998307222416005528noreply@blogger.comtag:blogger.com,1999:blog-6825731201864178309.post-52229043025612968782011-08-10T11:08:24.917-04:002011-08-10T11:08:24.917-04:00http://m.a.tt/er/massh
http://m.a.tt/er/ambit
Sha...http://m.a.tt/er/massh<br />http://m.a.tt/er/ambit<br /><br />Shameless self promotion. Originally Massh was a serialized script for pushing, then running small, procedural 'jobs' on multiple hosts and was named deploy.sh (not the Jetty deploy.sh - yet another one ). Like you, I found myself searching and trying the parallel ssh'ers that existed at that time. I tried a few and settled on one from your list that will remain unnamed. <br /><br />I work in a very large environment. Initially I used my chosen parallel ssh'er rather conservatively - slowly but surely using it for more complicated tasks, on increasingly more hosts. It did not take long for said ssh'er to completely fall over with performance issues (setting inflight ssh connections to 10 for a couple hundred target hosts crushed the box I was running the ssh'er from). Another area where almost all ssh'ers failed miserably was output. Most of them were fine dealing a with single line of output per target host. Most of them were useless for multi-line output per target host (what's the point of returning out-of-order output for df -h [/usr of host x directly under / of host y]?). This inspired me to write Massh. <br /><br />Massh is written in Bash, but has existed previously in Perl (Went from Bash, to Perl, to a Perl variant written almost entirely by an employee of mine at a past company, back to Bash). Massh has a companion script - Ambit - that handles enumerating hostnames and managing HostGroups from an ever increasing # of sources:<br /><br />Files<br />Predefined System Wide HostGroups<br />Predefined User Specific HostGroups<br />Predefined Network HostGroups [DNS TXT records]<br />last but not least...<br /> Ambit expandable string[s] on the command line (example below)<br /><br />In the near future I will be adding support for Genders (used by pdsh) and and NIS netgroups. In fact Gender support is probably already working but I've yet to test it. <br /><br /><br />Example: Ambit Expanding Hostlist from String Provided on the Command Line <br /><br />$ ambit ns[1..5].[apple,google,twitter,facebook].com<br />ns1.apple.com<br />ns1.facebook.com<br />ns1.google.com<br />ns1.twitter.com<br />ns2.apple.com<br />ns2.facebook.com<br />ns2.google.com<br />ns2.twitter.com<br />ns3.apple.com<br />ns3.facebook.com<br />ns3.google.com<br />ns3.twitter.com<br />ns4.apple.com<br />ns4.facebook.com<br />ns4.google.com<br />ns4.twitter.com<br />ns5.apple.com<br />ns5.facebook.com<br />ns5.google.com<br />ns5.twitter.com<br /><br />Massh does the following very well and very parallelized:<br /><br />Runs Commands on Target Hosts <br />Runs Local Scripts on Target Hosts<br />Pushes Files to Target Hosts <br />Pulls Files From Target Hosts<br /><br />Here is a short vid that gives a good indication of Massh's performance (the # of hosts in the vid is 200):<br /><br /><a href="http://m.a.tt/er/massh-is-fast.mov" rel="nofollow">massh-is-fast.mov</a><br /><br />This image shows well ordered and clear multi-line output. <br /><br /><a href="http://m.a.tt/er/multi-line-output" rel="nofollow">multi-line-output.jpg</a><br /><br />As for these two requirements:<br /><br />"I just want to specify hosts on the command line (with no prior setup). I really don't even want to required ssh keys or having the same password if I can avoid it."<br /><br />Massh does depend on ssh private/public keys - BUT - I have a working first build of a parallelized public key deployer. It *safely* prompts the user for their password for the target hosts and then quickly installs the public key in parallel. The problem is the "[not] having the same password" part. I really don't know of an effective way to manage multiple passwords, that can be referenced by an ssh'er during auth AND is actually secure. I almost always insist that users have no password set (shadow entries are set to ! invalid string) and SSH only allow keyed authentication. Let me know if you try out Massh. Feel free to contact me if you have any issues or want to suggest a feature. <br /><br />Regards,<br />Mike (Massher) MarschallUnknownhttps://www.blogger.com/profile/17251806262809569364noreply@blogger.comtag:blogger.com,1999:blog-6825731201864178309.post-8105034352961131792011-07-07T08:40:10.398-04:002011-07-07T08:40:10.398-04:00You can find the patch on the capistrano mailing l...You can find the patch on the capistrano mailing list (<a href="http://groups.google.com/group/capistrano/browse_thread/thread/4ef8718ef9539ef1/c5cfb7be7d152bb8" rel="nofollow">http://groups.google.com/group/capistrano/browse_thread/thread/4ef8718ef9539ef1/c5cfb7be7d152bb8</a>).<br /><br />I'm in the habit of patching the git recipe in a local directory and redirecting capistrano to find it like so:<br /><br />$:.unshift('src/ruby')<br /><br />With the patched recipe file is:<br />src/ruby/capistrano/recipes/deploy/scm/git.rbcrdlohttps://www.blogger.com/profile/12125558929574686676noreply@blogger.comtag:blogger.com,1999:blog-6825731201864178309.post-838703056744935392011-07-05T21:28:30.115-04:002011-07-05T21:28:30.115-04:00Hi,
I wanted to use this patch for my capistrano. ...Hi,<br />I wanted to use this patch for my capistrano. From where should I get it?<br /><br />Thanks,Saimahttps://www.blogger.com/profile/11851667976577530430noreply@blogger.comtag:blogger.com,1999:blog-6825731201864178309.post-76665551540679092952010-09-10T07:38:43.942-04:002010-09-10T07:38:43.942-04:00hm, sorry it is valid and working after all, my ba...hm, sorry it is valid and working after all, my bad. Thanks for making it available.<br /><br />Please remove my post #2 and #3 (this post) from the thread... :-)Lynxhttps://www.blogger.com/profile/02990110370112605223noreply@blogger.comtag:blogger.com,1999:blog-6825731201864178309.post-26671833651366232132010-09-10T07:34:58.769-04:002010-09-10T07:34:58.769-04:00(add to previous post)
Not only is the patch not a...(add to previous post)<br />Not only is the patch not accepted, it is not valid anymore because the codebase has changed...Lynxhttps://www.blogger.com/profile/02990110370112605223noreply@blogger.comtag:blogger.com,1999:blog-6825731201864178309.post-20352052564974107502010-09-10T07:24:28.702-04:002010-09-10T07:24:28.702-04:00The patch has not been accepted! The ticket has be...The patch has not been accepted! The ticket has been closed with a message about this option being in the pipeline....Lynxhttps://www.blogger.com/profile/02990110370112605223noreply@blogger.comtag:blogger.com,1999:blog-6825731201864178309.post-51849395917986057362010-04-08T15:09:09.318-04:002010-04-08T15:09:09.318-04:00For new readers: The patch have been accepted in c...For new readers: The patch have been accepted in <a href="https://capistrano.lighthouseapp.com/projects/8716-capistrano/tickets/65" rel="nofollow">capistrano ticket 65</a>.<br /><br />JarlUnknownhttps://www.blogger.com/profile/12576611906120882954noreply@blogger.comtag:blogger.com,1999:blog-6825731201864178309.post-23586478618131184682009-05-14T02:16:00.000-04:002009-05-14T02:16:00.000-04:00Fantastic! It works!Fantastic! It works!Anonymousnoreply@blogger.com