• Stars
    star
    310
  • Rank 134,926 (Top 3 %)
  • Language
    Go
  • License
    Apache License 2.0
  • Created about 9 years ago
  • Updated about 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A build automation tool for Docker applications

dobi

A build automation tool for Docker applications.

Keep your project tasks organized, portable, repeatable, and fast with dobi. Define the resources and tasks required to build, test, and release your project in a dobi.yaml and run them with dobi TASK.

See Getting Started

https://img.shields.io/github/release/dnephin/dobi.svg?maxAge=7200 https://circleci.com/gh/dnephin/dobi/tree/master.svg?style=shield https://goreportcard.com/badge/github.com/dnephin/dobi https://badges.gitter.im/dnephin/dobi.png

Features

Key features of dobi:

  • optimal - tasks are only run when the resource is stale. If a resource hasn't changed the task is skipped.
  • portable - all tasks run in a container, so developers are free to use different operating systems and environments.
  • repeatable - tasks are defined in a dobi.yaml so new contributers can get started quickly, and a task will always produce the same results. Variables are supported, but must be explicitly defined, so there's no hidden environment variables that could change the behaviour of a task.
  • organized - tasks can be chained together using an alias resource to produce entire workflows like test or release, which may involve multiple independent tasks.
  • dependencies - tasks can depend on other tasks using depends. When a task is run, its dependencies are checked first, and run if they are stale.

Install

The one liner:

curl -L -o /usr/local/bin/dobi "https://github.com/dnephin/dobi/releases/download/v0.15.0/dobi-$(uname -s)"; chmod +x /usr/local/bin/dobi

For a Windows binary, and more install options, see Install

Examples

See Examples

Documentation

See Documentation

Contributing

dobi is still in early development. If you'd like to contribute, please open an issue, or find an existing issue, and leave a comment saying you're working on a feature.

More Repositories

1

pre-commit-golang

Golang hooks for pre-commit
Shell
655
star
2

docker-apk-build

An alpine linux environment for building apk packages using docker
Makefile
65
star
3

PyStaticConfiguration

A python library for loading and reading configuration
Python
64
star
4

filewatcher

A command line tool to execute commands when files are modified.
Go
52
star
5

compose-addons

Tools to supplement the feature set of docker-compose
Python
50
star
6

alpine-package-mirror

Dockerfile to run an alpine package mirror or private package repo
Shell
26
star
7

TracAdvancedSearchPlugin

A plugin for Trac that provides an extension point for attaching a full text search engine. Including a backend for Solr.
JavaScript
19
star
8

multirepo-orb

Multirepo and monorepo support for CircleCI jobs.
Shell
11
star
9

alpine-s6

Minimal example of using s6 in a docker container to handle signals as pid1
Shell
11
star
10

Sudoku-Solver

Solves sudoku puzzles in under a second
Python
10
star
11

swagger-gen-types

generate go types from a swagger spec
Go
9
star
12

Turntable.fm-chat-bot

Ui Improvements and some TT helpers
CoffeeScript
8
star
13

goimportgraph

Generate a .dot file from a go package import graph
Go
7
star
14

openLETS

An open source local exchange trading system
Python
6
star
15

go-sugar

All the things I think I'm missing from Go
5
star
16

PyAutoTest

Automatically run unit tests when a file is modified.
Python
4
star
17

rss-digest

Python
3
star
18

compose-swarm-sandbox

A sandboxed swarm cluster - using compose
Shell
3
star
19

python-api-factory

Python library for creating API clients and generic servlets
Python
3
star
20

Spite-And-Malice

Spite and Malice the card game.
Python
2
star
21

Perzoot-Crawler-Trainer--Chrome-Extension-

A Chrome extension to annotate urls and send the annotated html markup to a server.
JavaScript
2
star
22

Yelp-Command-Line-API-Client

A quick app written for Yelp Hacakthon5
Python
2
star
23

docker-swarm-slave

Docker image for running a swarm slave dind
Shell
1
star
24

dotfiles

Shell
1
star
25

configtf

Config deserialization library for golang
Go
1
star
26

savages-hockey

Player attendance django app for Savages ball hockey
Python
1
star
27

PstatsInteractive

A web service to interactively inspect large python profiles.
Python
1
star
28

Threaded-Crawler

Python
1
star
29

Find-Similar-Documents

Python
1
star
30

gorepack

Rename go packages and imports for vanity urls or code migration
Go
1
star
31

project-quill

1
star
32

go-astk

Go abstract syntax tree toolkit
Go
1
star
33

presentation

Presentation template using reveal.js, each branch is a presentation
CSS
1
star
34

Tron-Learning-Group

The slides for my presentation on Tron for Yelp learning group.
JavaScript
1
star
35

plsdo

Shell
1
star
36

Simple-Backup-Util

Highly configurable personal backup solution
Python
1
star
37

TreeOrg

Tree Organizer using Google App Engine, web.py, coffeescript, backbone.js
Python
1
star
38

dockerd-load-test

Python
1
star
39

quill-data-format

JavaScript
1
star
40

golang-orb

CircleCI commands for Go projects.
Shell
1
star
41

Media-Mover

Wrapper around ssh to simplify synchronization of media files between computers.
Python
1
star