Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mitchellwrosen/task
https://github.com/mitchellwrosen/task
Last synced: about 1 month ago
JSON representation
- Host: GitHub
- URL: https://github.com/mitchellwrosen/task
- Owner: mitchellwrosen
- License: bsd-3-clause
- Created: 2015-11-08T22:00:41.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2015-11-14T19:08:29.000Z (about 9 years ago)
- Last Synced: 2024-10-22T06:55:01.281Z (3 months ago)
- Language: Haskell
- Size: 0 Bytes
- Stars: 1
- Watchers: 4
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
A hacked-together task runner using `turtle` and `concurrent-output`.
- Logs stdout/stderr with timestamps to `.tasks//logs/`
- Records the last 5 run times in `.tasks//times`
- Displays an ASCII progress barI intend to use this simple runner to refactor some internal bash scripts, which currently
- Run isolated tasks in sequence, so output doesn't get garbled
- Require inspection of whatever side-effects the script was supposed to perform, to make sure it workedParallelism, logging, checking error codes, and outputting red text when things go wrong. Revolutionary!
```haskell
{-# LANGUAGE OverloadedStrings #-}import Control.Concurrent.Async
import System.Console.Regions
import Taskmain :: IO ()
main = displayConsoleRegions $ do
mapConcurrently runTask ["./good.sh", "./bad.sh", "sleep 4", "sleep 2"]
pure ()
```