stack-network: A program for extending Stack to add distributed capabilities

This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.

[maintain] [Publish]

See README at https://github.com/McGizzle/stack-network#readme


[Skip to Readme]

Properties

Versions 0.1.0.0, 0.1.0.1, 0.1.0.1
Change log None available
Dependencies ansi-terminal, async, base (>=4.7 && <5), binary, bytestring, Cabal, clock, configurator, directory, dirstream, distributed-process-lifted, distributed-process-simplelocalnet, exceptions, filepath, lifted-base, mtl, optparse-applicative, pipes, pipes-safe, process, system-fileio, system-filepath, temporary, text, transformers [details]
License BSD-3-Clause
Copyright 2018 Sean McGroarty
Author Sean McGroarty
Maintainer Sean McGroarty <mcgroas@tcd.ie>
Category Web
Home page https://github.com/McGizzle/stack-network#readme
Bug tracker https://github.com/McGizzle/stack-network/issues
Source repo head: git clone https://github.com/McGizzle/stack-network
Uploaded by mcgroas at 2018-05-01T11:42:15Z

Modules

[Index]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


Readme for stack-network-0.1.0.1

[back to package description]

stack-network

Hackage

About

This is a program I built as part of my Final Year Project in College. The project is titled An Exploration into the Distribution of Stack in which I designed and tested a few approaches for distributing Stack. stack-network uses Cloud Haskell and pipes to efficiently transmit files between nodes on a network and thus minimise build times.

Testing

Prerequisites

Stack

Docker (installed and running)

docker pull mcgizzle/stack-network

stack test

This will run a number of scenarios created from docker-compose files embedded into the program using Quasi-Quotes.

Building & Running

stack build

Ensure you have a network.config file

net 
{
	host = "127.0.0.1"
	port = "5000"
}

Update the port and host as appropriate.

stack exec stack-network --help will list the options

To see the program in action it is suggested running it with Docker. I have provided an image that wil work with the tests and the docker-compose located in the project root.

Pull the image from Docker

docker pull mcgizzle/stack-network

Run this from the root of the project

docker-compose up