packages feed

distributed-process-zookeeper-0.2.0.0: distributed-process-zookeeper.cabal

name: distributed-process-zookeeper
version: 0.2.0.0
cabal-version: >=1.10
build-type: Simple
license: BSD3
license-file: LICENSE
copyright: Jeremy Huffman
maintainer: jeremy@jeremyhuffman.com
homepage: https://github.com/jeremyjh/distributed-process-zookeeper
synopsis: A Zookeeper back-end for Cloud Haskell.
description:
    Provides service and node discovery for Cloud Haskell applications using
    a Zookeeper cluster for name registration, lookups and leader election.
    Uses the hzk bindings to the Zookeeper multi-threaded C library.
    .
    Objectives and features:
    .
    * Compatible with <http://hackage.haskell.org/package/distributed-process-p2p distributed-process-p2p> API - can work as a drop-in
    replacement.
    .
    * No dependencies beyond those already included by distributed-process, hzk and network-transport-tcp.
    .
    * Automatic registration of local names to Zookeeper.
    .
    * Global singleton processes with leader election and re-elections on leader exit.
    .
    .
    Check out the <https://github.com/jeremyjh/distributed-process-zookeeper/blob/master/examples/Boss.hs example>.

category: Control, Cloud Haskell
author: Jeremy Huffman
 
source-repository head
    type: git
    location: git://github.com/jeremyjh/distributed-process-zookeeper.git
 
flag zkexamples
    Description:  Build example programs.
    Default: False
 
library
    build-depends:
        base >=4.6 && < 4.8,
        hzk >=2.1.0 && <2.2,
        distributed-process >=0.5.3 && <0.6,
        network-transport >=0.4.1.0 && <0.5,
        network-transport-tcp >=0.4.1 && <0.5,
        binary >=0.7.1.0 && <0.8,
        bytestring >=0.10.0.0 && <0.11,
        containers >=0.5.0.0 && <0.6,
        transformers >=0.4.2.0 && <0.5,
        mtl >=2.2.1 && <2.3,
        deepseq >=1.3.0.0 && <1.4,
        network >=2.6.0.2 && <2.7
    exposed-modules:
        Control.Distributed.Process.Zookeeper
    exposed: True
    buildable: True
    default-language: Haskell2010
    hs-source-dirs: src
    ghc-options: -Wall
 
executable boss
    build-depends:
        base -any,
        distributed-process-zookeeper -any,
        distributed-process -any
     
    if flag(zkexamples)
        buildable: True
    else
        buildable: False
    main-is: Boss.hs
    buildable: True
    default-language: Haskell2010
    hs-source-dirs: examples
    ghc-options: -threaded -with-rtsopts=-N
 
test-suite spec
    build-depends:
        base -any,
        distributed-process-zookeeper -any,
        hspec >= 2.0.2,
        distributed-process-monad-control -any,
        lifted-base -any,
        enclosed-exceptions -any,
        network -any,
        distributed-process -any,
        deepseq -any,
        monad-control -any,
        network-transport -any,
        network-transport-tcp -any,
        transformers -any,
        hzk -any,
        bytestring -any
    type: exitcode-stdio-1.0
    main-is: Spec.hs
    buildable: True
    default-language: Haskell2010
    hs-source-dirs: test
    ghc-options: -threaded -with-rtsopts=-N