aboutsummaryrefslogtreecommitdiff
This is a really hacky plugin for spiffy that allows you to serve
automatically-generated release-info files and files-list files
(the latter of which serves as the files section of a meta-file)
for an SVN repository.

It assumes the svn repository location contains subdirectories
matching the names of eggs and those subdirectories contain a
directory called "tags" with underneath it a directory for each
revision, with the revision number as its name:

 /MY-EGG
   /tags
     /1.0
     /1.1
 /ANOTHER-EGG
   /tags
     /0.1
     /0.2
     /1.0


You can use it like this:

(use spiffy spiffy-uri-match pseudo-meta-egg-info)

;; Trailing slash is mandatory here!
;; By default this uses the Chicken repo
(egg-repo "http://example.com/your-egg-repo/eggs/release/4/")

(vhost-map `((".*" 
              . ,(uri-match/spiffy
                  `(((/ "release-info") (GET ,release-info))
                    ((/ "files-list")   (GET ,files-list)))))))
(start-server)


This makes the release-info for egg MY-EGG available under
http://localhost:8080/release-info?egg=MY-EGG

and the files-list for release 1.0 under
http://localhost:8080/files-list?egg=MY-EGG;release=1.0