Differences between revisions 15 and 0
| Deletions are marked like this. | Additions are marked like this. |
| Line 5: | Line 5: |
| [[Include(^UnBlog/20..-..-..$,,1,to="^----",sort=descending,items=5)]] | [[Include(^UnBlog/20..-..-..$,,1,to="^----",sort=descending,items=3)]] |
| <<- <- September 2010 -> ->> | ||||||
|---|---|---|---|---|---|---|
| Sun | Mon | Tue | Wed | Thu | Fri | Sat |
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30 | ||
Here's a list of things I create, write, invent, or build.
UnBlog/2010-04-15
Mercurial Remote Test Runner via Push
I heard someone in IRC saying that the mercurial test suite was bogging down theirlaptop, so I set up a quick push-test service for the mercurial crew. If you're in crew and you do a push to ssh://hgtester@ry4an.org:2222/ these steps will be taken:
a local clone of the crew repo is updated from intevention.de
a new, disposable local clone is created from that crew clone
your csets are pushed to that new clone
the working directory is updated to 'tip'
a build is done
the test suite is run
the build and results show up in your stdout
the new clone (and your pushed csets) are deleted
It's on a reasonably fast, unloaded box so the test suite runs in about 3 mins 30 seconds. Thanks to ThomasAH for providing the crew pubkeys. If you're not in crew and want to use the service please contact me and convince me you're not going to write a test that does a "rm -rf ~", because that would completely work.
Unfortunately, the output is getting buffered somewhere so there's no output after "searching for changes" for almost 4 minutes, but the final output looks as attached.
The machine's RSA host key fingerprint is: ac:81:ac:0b:47:f4:20:a1:4d:7e:6a:c5:62:ba:62:be. (updated 2010/06/07)
The scripts can be viewed here:
http://bitbucket.org/Ry4an/hgtester/
If all that was jibberish, we now return you to your regularly scheduled silence.
UnBlog/2009-09-17
Remote Repository Creation for Mercurial Over HTTP
I park in the #mercurial IRC channel a lot to answer the easy questions, and on that comes up often is, "How can I create a remote repository over HTTP?". The answer is: "You can't.".
Mercurial allows you to create a repository remotely using ssh with a command line like this:
hg clone localrepo ssh://host//abs/path
but there's no way to do that over HTTP using either hg serve or hgweb behind Apache.
I kept telling people it would be a very easy CGI to write, so a few months back I put my time where my mouth was and did it.
#!/bin/sh echo -n -e "Content-Type: text/plain\n\n" mkdir -p /my/repos/$PATH_INFO cd /my/repos/$PATH_INFO hg init
That gets saved in unsafecreate.cgi and pointed to by Apache like this:
ScriptAlias /unsafecreate /path/to/unsafecreate.cgi
and you can remotely invoke it like this:
http://your-poorly-admined-host.com/unsafecreate/path/to/new/repo
That's littered with warning about its lack of safety and bad administrative practices because you're pretty much begging for someone to do this:
http://your-poorly-admined-host.com/unsafecreate/something%3Brm%20-rf%20
Which is not going to be pretty, but on a LAN maybe it's a risk you can live with. Me? I just use ssh.
At the time I first suggested this someone chimed in with
a cleaned up version in the original pastie, but it's no safer.
UnBlog/2008-09-01
Grand Central Direct Dialer
I'm a huge fan of
Grand Central's call screening features. It's irksome, however, that they make it hard to dial outward -- sending your GC number instead of your cell number as the caller id. To do so you need to first add the target number to your address book, and often I'm calling someone I don't intend to call again often.
I started scripting up a way around that when I saw someone named Stewart
already had.
I wanted to be able to easily dial outbound from my cellphone, so I created a
mobile friendly web form around his script. The script requires info you should never give out (username, password, etc.), so you should really download the script and run it on your own webserver.
It also generates a bookmarklet you can drag to your browser's toolbar that will automatically dial any selected/highlighted phone number from your GC Number.
