Edgewall Software

Changes between Version 3 and Version 4 of Master Slave Protocol Http


Ignore:
Timestamp:
Jul 24, 2007, 2:15:53 PM (17 years ago)
Author:
cmlenz
Comment:

Pointer to branch

Legend:

Unmodified
Added
Removed
Modified
  • Master Slave Protocol Http

    v3 v4  
    22[[PageOutline(2)]]
    33
    4 This is a proposal for an HTTP-based protocol enabling communication between the build master and various build slaves. The protocol presented here is not final yet, nor is it implemented. Just throwing ideas out there, basically.
     4This is a proposal for an HTTP-based protocol enabling communication between the build master and various build slaves. The protocol presented here is not final yet. Implementation has been started on the [source:sandbox/http] branch.
    55
    66== Comparison to the Previous BEEP Protocol ==
     
    2525{{{
    2626#!xml
    27 POST /build/ HTTP/1.1
     27POST /builds/ HTTP/1.1
    2828Host: example.org
    2929Content-Type: application/x-bitten+xml
     
    4242#!xml
    4343HTTP/1.1 201 Created
    44 Location: http://example.org/build/trunk/123/
     44Location: http://example.org/builds/trunk/123/
    4545}}}
    4646
     
    6060{{{
    6161#!xml
    62 GET /build/trunk/123/ HTTP/1.1
     62GET /builds/trunk/123/ HTTP/1.1
    6363Host: example.org
    6464Accept: application/x-bitten+xml
     
    8989The first element in a build recipe must be the `<checkout>` element containing the information necessary for the slave to perform a checkout from the version control repository.
    9090
     91  ''Open issue: should `<checkout>` be a normal `<step>`, e.g.:''
     92  {{{
     93  #!xml
     94  <step id="checkout">
     95    <svn:checkout repos="http://svn.example.org/" rev="$revision" path="$path" />
     96  </step>
     97  }}}
     98
    9199== Build Reporting ==
    92100
     
    99107{{{
    100108#!xml
    101 PUT /build/trunk/123/steps/test/ HTTP/1.1
     109PUT /builds/trunk/123/steps/test/ HTTP/1.1
    102110Host: example.org
    103111
     
    124132{{{
    125133#!xml
    126 PUT /build/trunk/123/files/foobar-r123.tar.gz HTTP/1.1
     134PUT /builds/trunk/123/files/foobar-r123.tar.gz HTTP/1.1
    127135Host: example.org
    128136Content-Type: application/tar