Simple ECS calls for search and itemlookup.
[rl3.git] / rl3 / aws / configuration.sls
blobd755ff5ca467214a3740a78575de0d1f1db76a58
1 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
2 ;; Simple storage of configuration values.
3 ;; we could have multiple configuration maps 
4 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
5 (library
6   (rl3 aws configuration)
8   (export s3-configuration
9           aws-configuration)
11   (import
12    (rnrs base)
13    (only (rnrs lists)
14          assoc))
16   (define aws-configuration-map
17     `("AWS Configuration" . ,(quasiquote  (( host . "ecs.amazonaws.com")
18                                            (credentials-path . "/home/ray/awsaccount.txt")))))
19                                                                                                                    
20   (define s3-configuration-map
21     `("S3 Configuration" . ,(quasiquote ((host . "s3.amazonaws.com")
22                                         ; Path to file containing AWS id and keys
23                                          (credentials-path . "/home/ray/awsaccount.txt")
24                                         ; S3 bucket for storage of books
25                                          (bucket . "bravais")
26                                         ; Common library for uploaded ebooks
27                                          (library . "library")))))
28   
29   (define (configuration-value configuration property)
30     (let ((prop (assoc property (cdr configuration))))
31       (if (pair? prop)
32           (cdr prop)
33           (error 'get-property-value "Configuration: '~a' does not have property '~a'." (car configuration) property))))
34   
35   (define (s3-configuration prop)
36     (configuration-value s3-configuration-map prop))
38   (define (aws-configuration prop)
39     (configuration-value aws-configuration-map prop))
40   
41   )