ordo/tryme.scm

34 lines
1.5 KiB
Scheme

(use-modules
(ice-9 filesystem)
(ordo connection)
(ordo action filesystem)
(ordo play)
(ordo task)
(ordo handler))
(define test-play
(play "Test play"
#:connection (local-connection)
#:vars '((base-dir . "/home/ray/ordo-test"))
#:tasks (list
(task "Override base dir"
(const "/home/ray/ordo-test-again")
#:register 'base-dir)
(task "Create test directory"
(install-directory ($ 'base-dir)))
(task "Create test file from string content"
(install-file (file-name-join* ($ 'base-dir) "foo")
#:content "Hello, world!\n"))
(task "Create test file from local source"
(install-file (file-name-join* ($ 'base-dir) "bar")
#:local-src (file-name-join* ($ 'base-dir) "foo"))
#:triggers '(fritz))
(task "Create test file from remote source"
(install-file (file-name-join* ($ 'base-dir) "baz")
#:remote-src (file-name-join* ($ 'base-dir) "bar"))
#:triggers '(frobnicate)))
#:handlers `((frobnicate . ,(handler "Frobnicate" (const #t)))
(fritz . ,(handler "Fritz" (const #t)))
(frotz . ,(handler "Frotz" (const #t))))))
(run-play test-play)