packages feed

task-distribution-0.1.0.3: task-distribution.cabal

name:                task-distribution

version:             0.1.0.3
synopsis:            Distributed processing of changing tasks
description:         A framework for distributing tasks running on HDFS data using Cloud Haskell.
                     The goal is speedup through distribution on clusters using regular hardware.
                     This framework provides different, simple workarounds to transport new code to other cluster nodes.
                     See project home / README.md for more information.
homepage:            http://github.com/michaxm/task-distribution#readme
license:             BSD3
license-file:        LICENSE
author:              Axel Mannhardt
maintainer:          7a3ggptwts@snkmail.com
copyright:           2016 Axel Mannhardt
category:            Distributed Computing
build-type:          Simple
-- extra-source-files:
cabal-version:       >=1.18


library
  hs-source-dirs:      src
  exposed-modules:     Control.Distributed.Task.Types.TaskTypes
                     , Control.Distributed.Task.Types.HdfsConfigTypes
                     , Control.Distributed.Task.Distribution.RunComputation
                     , Control.Distributed.Task.Distribution.TaskDistribution
                     , Control.Distributed.Task.Distribution.LogConfiguration
                     , Control.Distributed.Task.TaskSpawning.RemoteExecutionSupport
  other-modules:       Control.Distributed.Task.Distribution.TaskTransport
                     , Control.Distributed.Task.Distribution.DataLocality
                     , Control.Distributed.Task.TaskSpawning.TaskSpawning
                     , Control.Distributed.Task.TaskSpawning.TaskSpawningTypes
                     , Control.Distributed.Task.TaskSpawning.TaskDefinition
                     , Control.Distributed.Task.TaskSpawning.TaskDescription
                     , Control.Distributed.Task.TaskSpawning.ExecutionUtil
                     , Control.Distributed.Task.TaskSpawning.BinaryStorage
                     , Control.Distributed.Task.TaskSpawning.SourceCodeExecution
                     , Control.Distributed.Task.TaskSpawning.DeployFullBinary
                     , Control.Distributed.Task.TaskSpawning.DeploySerializedThunk
                     , Control.Distributed.Task.TaskSpawning.FunctionSerialization
                     , Control.Distributed.Task.TaskSpawning.DeployObjectCodeRelinked
                     , Control.Distributed.Task.DataAccess.DataSource
                     , Control.Distributed.Task.DataAccess.SimpleDataSource
                     , Control.Distributed.Task.DataAccess.HdfsDataSource
                     , Control.Distributed.Task.DataAccess.HdfsListing
                     , Control.Distributed.Task.Util.Configuration
                     , Control.Distributed.Task.Util.ErrorHandling
                     , Control.Distributed.Task.Util.FileUtil
                     , Control.Distributed.Task.Util.Logging
                     , Control.Distributed.Task.Util.SerializationUtil
  ghc-options:         -Wall -rtsopts -with-rtsopts=-N
  build-depends:       base >= 4.7 && < 5
                     , hint
                     , binary
                     , temporary, filepath, directory
                     , transformers
                     , bytestring
                     , packman
                     , process
                     , distributed-process
                     , distributed-process-simplelocalnet
                       -- for explicit bindings (instead of Template Haskell)
                     , rank1dynamic
                     , distributed-static
                     , text
                     , split
                     , hslogger
                     , time
                     , hashable
                     , zlib
                     , bzlib
                     , hadoop-rpc
                     , vector
                     , containers
                     , async
  default-language:    Haskell2010

executable slave
  hs-source-dirs:      app
  main-is:             Slave.hs
  other-modules:       
  ghc-options:         -threaded -rtsopts -with-rtsopts=-N -Wall
  build-depends:       base
                     , task-distribution
                     , hslogger
                     , containers
                     , json
                     , strings
                     , bytestring
  default-language:    Haskell2010

executable example
  hs-source-dirs:      app
  main-is:             Main.hs
  other-modules:       RemoteExecutable
                     , FullBinaryExamples
                     , DemoTask
  ghc-options:         -threaded -rtsopts -with-rtsopts=-N -Wall
  build-depends:       base
                     , split
                     , task-distribution
                     , hslogger
                     , containers
                     , json
                     , strings
                     , bytestring
  default-language:    Haskell2010

executable task-distribution-object-code-remote
  hs-source-dirs:      object-code-app, src
  main-is:             RemoteExecutor.hs
  other-modules:       RemoteExecutable
                     , Control.Distributed.Task.Types.TaskTypes
                     , Control.Distributed.Task.TaskSpawning.DeployFullBinary
  ghc-options:         -threaded -rtsopts -with-rtsopts=-N
  build-depends:       base
                     , bytestring
                     , hslogger
                     , split
                     , directory
                     , time
                     , binary
                     , process
                     , temporary
                     , filepath
                     , distributed-process
                     , async
                     , hadoop-rpc
                     , vector
                     , text
                     , zlib
                     , bzlib
  default-language:    Haskell2010

executable run-demo-task
  hs-source-dirs:      app
  main-is:             RunDemoTask.hs
  other-modules:       DemoTask
  ghc-options:         -threaded -rtsopts -with-rtsopts=-N -O2 -auto-all -caf-all
  build-depends:       base
                     , bytestring
                     , zlib
                     , split
                     , async
  default-language:    Haskell2010

executable test-visit-performance
  hs-source-dirs:      app
  main-is:             TestVisitCalculation.hs
  other-modules:       RemoteExecutable
                     , VisitCalculation
  ghc-options:         -threaded -rtsopts -with-rtsopts=-N -Wall
  build-depends:       base
                     , split
                     , containers
                     , json
                     , bytestring
  default-language:    Haskell2010

test-suite test-node-matching
  type:                exitcode-stdio-1.0
  hs-source-dirs:      test
                     , src
  main-is:             NodeMatchingTests.hs
  other-modules:       Control.Distributed.Task.Types.TaskTypes
                     , Control.Distributed.Task.Util.Configuration
                     , Control.Distributed.Task.Types.HdfsConfigTypes
                     , Control.Distributed.Task.Distribution.DataLocality
                     , Control.Distributed.Task.Util.Logging
  build-depends:       base
                     , hspec
                     , task-distribution
                     , hint
                     , binary
                     , temporary, filepath, directory
                     , transformers
                     , bytestring
                     , packman
                     , process
                     , distributed-process
                     , distributed-process-simplelocalnet
                     , rank1dynamic
                     , distributed-static
                     , text
                     , hadoop-rpc
                     , vector
                     , split
                     , hslogger
  ghc-options:         -O0
  default-language:    Haskell2010

source-repository head
  type:     git
  location: git@github.com:michaxm/task-distribution.git