summaryrefslogblamecommitdiff
path: root/index.html
blob: 528193dd6a60cd813cb50725e07e50c219546794 (plain) (tree)
1
2
3
4
5
6
7
8
9
10







                                              

                                                                                
          






                                                  

                








                              




                                                                
                                            




                                                                                                


                                                                      





















                                                                                                                                                                                                                             






































                                                                                                                           




































                                                                                                                                                                                                                       
<!DOCTYPE html>
<html>
<head>
  <meta charset='utf-8'>

  <title>franckcuny/jitterbug @ GitHub</title>

  <style type="text/css">
    @import url(http://fonts.googleapis.com/css?family=Droid+Sans:regular,bold);
    @import url(http://fonts.googleapis.com/css?family=Droid+Serif:regular);
    body {
    margin-top: 1.0em;
    font-family: "Helvetica,Arial,FreeSans";
    background-color: #edf1f3;   
    color: #222;
    line-height: 1.4em;          
    font-family: 'Droid Sans',Verdana, sans-serif;
    text-align: center;
    }
    #container {
    background: #ffffff;
    border-style: solid;
    border-width: 1px;
    padding: 1em;
    font-size: 110%;
    text-align: justify;
    width: 50em;
    margin: 3em auto 2em auto;
    line-height: 1.5em;
    }
    h1 { font-size: 3.8em; color: #120e0c; margin-bottom: 3px; }
    h1 .small { font-size: 0.4em; }
    h1 a { text-decoration: none }
    h2 { font-size: 1.5em; color: #120e0c; }
    h3 { font-size: 1.2em; color: #120e0c; }
    a { color: #120e0c; }
    .description { font-size: 1.2em; margin-bottom: 30px; margin-top: 30px; font-style: italic;}
    .download { float: right; }
    pre { background: #000; color: #fff; padding: 15px;}
    hr { border: 0; width: 80%; border-bottom: 1px solid #aaa}
    .footer { text-align:center; padding-top:30px; font-style: italic;
    }
    .code {background: #f0f0f0; color: eee; padding: 15px; }
  </style>
</head>

<body>
  <a href="http://github.com/franckcuny/jitterbug"><img style="position: absolute; top: 0; right: 0; border: 0;" src="http://s3.amazonaws.com/github/ribbons/forkme_right_darkblue_121621.png" alt="Fork me on GitHub" /></a>

  <div id="container">

    <div class="download">
      <a href="http://github.com/franckcuny/jitterbug/zipball/master">
        <img border="0" width="90" src="http://github.com/images/modules/download/zip.png"></a>
      <a href="http://github.com/franckcuny/jitterbug/tarball/master">
        <img border="0" width="90" src="http://github.com/images/modules/download/tar.png"></a>
    </div>

    <h1><a href="http://github.com/franckcuny/jitterbug">jitterbug</a>
      <span class="small">by <a href="http://github.com/franckcuny">franckcuny</a></span></h1>

    <div class="description">
      small smoker for Perl projects hosted on github
    </div>

    <p>Jitterbug is written in Perl 5 and depends on various CPAN modules, such as Dancer, DBIx::Class and Git::Repository.

      <h2>Install</h2>
    <pre>perl Build.PL

# You can also use Makefile.PL, but you will then have to manually 
# install dependencies
# perl Makefile.PL

# install missing dependencies
./Build installdeps

# start the jitterbug Dancer app, which by default binds to port 3000
perl jitterbug.pl

# If you need to start it on a different port use -p
# perl jitterbug.pl -p 3001
</pre>
<br />    
In another terminal, deploy a DBIx::Class schema ( which is SQLite by default, 
change the values in config.yml to tweak) :

<pre>perl scripts/jitterbug_db --config config.yml --deploy</pre>

Now add a post-receive hook to your github project that hits the /hook/ URL
on the server that the jitterbug Dancer app is running on, i.e.

<pre>http://example.com:3001/hook/</pre>

Now you must start the builder, which actually clones a new git repo for
each task (this could be network-intensive) and actually runs the build
and test commands for each project.

<pre>perl scripts/builder.pl -c config.yml</pre>

Now, when you commit to a project that has a Jitterbug post-receive hook,
the builder check every 30 seconds for a new task and build and test your
projects!

</p>
<h2>License</h2>
<p>This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.</p>
<h2>Authors</h2>
<p>franck cuny (franck@lumberjaph.net)
<br/>Jonathan "Duke" Leto (jonathan@leto.net)
<br/>ben hengst (notbenh@cpan.org)
<br/>Alexis Sukrieh (sukria@sukria.net)
<br/>Sawyer X (xsawyerx@cpan.org)
<br/>
<br/>      </p>
<h2>Contact</h2>
<p>franck (franck@lumberjaph.net)
<br/>      </p>


    <h2>Download</h2>
    <p>
      You can download this project in either
      <a href="http://github.com/franckcuny/jitterbug/zipball/master">zip</a> or
      <a href="http://github.com/franckcuny/jitterbug/tarball/master">tar</a> formats.
    </p>
    <p>You can also clone the project with <a href="http://git-scm.com">Git</a>
      by running:
      <pre>$ git clone git://github.com/franckcuny/jitterbug</pre>
    </p>

    <div class="footer">
      get the source code on GitHub : <a href="http://github.com/franckcuny/jitterbug">franckcuny/jitterbug</a>
    </div>

  </div>

  <script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
try {
var pageTracker = _gat._getTracker("UA-18479905-1");
pageTracker._trackPageview();
} catch(err) {}</script>
</body>
</html>