Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kcmerrill/alfred
(v0.2) Even Batman needs a little help. Task runner. Automator. Build system.
https://github.com/kcmerrill/alfred
automation build-system build-tool developer-tools task-runner
Last synced: about 2 months ago
JSON representation
(v0.2) Even Batman needs a little help. Task runner. Automator. Build system.
- Host: GitHub
- URL: https://github.com/kcmerrill/alfred
- Owner: kcmerrill
- License: mit
- Created: 2016-08-07T03:54:43.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2019-05-11T00:29:51.000Z (over 5 years ago)
- Last Synced: 2024-06-18T23:04:00.094Z (7 months ago)
- Topics: automation, build-system, build-tool, developer-tools, task-runner
- Language: Go
- Homepage:
- Size: 13.3 MB
- Stars: 63
- Watchers: 8
- Forks: 14
- Open Issues: 19
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
[![Build Status](https://travis-ci.org/kcmerrill/alfred.svg?branch=master)](https://travis-ci.org/kcmerrill/alfred) [![Join the chat at https://gitter.im/kcmerrill/alfred](https://badges.gitter.im/kcmerrill/alfred.svg)](https://gitter.im/kcmerrill/alfred?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
[![Open Source Helpers](https://www.codetriage.com/kcmerrill/alfred/badges/users.svg)](https://www.codetriage.com/kcmerrill/alfred)![Alfred](assets/alfred29.jpg "Alfred")
> Even Batman needs a little help.
# alfred
A simple go/yaml powered make file/task runner with a bit of a twist and a ton of flexibility.
## Features
- Extendable + Plugins
- Watch files for modifications
- Retry/Rerun tasks based on failures before giving up
- Logging
- Success/Failure decision tree
- Run tasks asynchronously or synchronously
- Arguments
- Loops
- Static webserver
- Many more!For more information [RTFM](TFM.md "additional documentation").
## Sample Usage
Create a file named: `alfred.yml`
```yaml
say.hello:
summary: I will say hello!
usage: alfred say.hello
command: echo "Hello!"say.howareyou:
summary: I will ask how you are
usage: alfred say.howareyou
command: |
echo "How"
echo "Are"
echo "You?"speak:
tasks: say.hello say.howareyoublurt:
multitask: say.hello say.howareyou
```Then, anywhere in the top-level or child directories to the `alfred.yml` file:
`alfred` Will show you all of the available tasks and a quick summary.
`alfred say.hello` Will simply say hello
`alfred say.howareyou` Will ask how you are
`alfred speak` will perform both tasks in the specified order
`alfred blurt` will perform both tasks at the same time
## Screencast/Demo
[![asciicast](assets/demo.png)](https://asciinema.org/a/103711)
## Example uses
- Monitor websites
- Setup/Update/Deploy projects in your dev env
- Simple Nagios, Jenkins, pingdom replacement
- Monitor crons(alert on failures, update endpoints etc ... )
- Watch for file modifications to run tests->builds## Binaries || Installation
[![MacOSX](https://raw.githubusercontent.com/kcmerrill/go-dist/master/assets/apple_logo.png "Mac OSX")](http://go-dist.kcmerrill.com/kcmerrill/alfred/mac/amd64) [![Linux](https://raw.githubusercontent.com/kcmerrill/go-dist/master/assets/linux_logo.png "Linux")](http://go-dist.kcmerrill.com/kcmerrill/alfred/linux/amd64)
via go:
`$ go get -u github.com/kcmerrill/alfred`
via docker:
`$ docker run -v $PWD:$PWD -w $PWD kcmerrill/alfred`