Skip to content
This repository was archived by the owner on Aug 20, 2020. It is now read-only.
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
44 commits
Select commit Hold shift + click to select a range
c88d55b
Experiment with refactoring to Python
bripkens Jan 4, 2016
9a9bd0e
Translate identification of working Docker setup
bripkens Jan 6, 2016
4caf73f
Adapt structure to Python conventions
bripkens Jan 9, 2016
6546d15
Start with actual formula development
bripkens Jan 9, 2016
9385975
Get IPs and allow cleanup process
bripkens Jan 10, 2016
bc6eee4
Remove bash based scripts
bripkens Jan 10, 2016
7d31b4e
Add project metadata
bripkens Jan 10, 2016
9393996
Ignore files created during the build process
bripkens Jan 10, 2016
8688b17
Support Python 2 and 3
bripkens Jan 10, 2016
6064bf4
Necessary changes for PyPi upload
bripkens Jan 10, 2016
6bb6728
Use bumpversion
bripkens Jan 10, 2016
e3c3809
Small improvements
bripkens Jan 10, 2016
0f6040c
Add pointer to PyPi release gist with some nice ideas
bripkens Jan 10, 2016
67d88c5
Only run a single formula per dock call
bripkens Jan 10, 2016
b3addd9
Either run options or formulas
bripkens Jan 10, 2016
fd0f17d
Start with an FAQ
bripkens Jan 10, 2016
4ce213b
Add formula mongo-express
bripkens Jan 10, 2016
781868e
Add redis and redis-cli formula
bripkens Jan 10, 2016
aecc5fd
Add Ubuntu formula
bripkens Jan 10, 2016
82d9198
Add Neo4j formula
bripkens Jan 10, 2016
34663c5
Add Node.js formulas
bripkens Jan 10, 2016
830bc59
Add Elasticsearch formula
bripkens Jan 10, 2016
34d9a90
docker-gc should not add separate console output
bripkens Jan 10, 2016
7d73f5b
add postgres formulas
bripkens Jan 10, 2016
68d10eb
Add MySQL formulas
bripkens Jan 10, 2016
86c575c
Add Zookeeper formula
bripkens Jan 10, 2016
7c389fb
Add Cassandra formula
bripkens Jan 10, 2016
e2e5d87
Reuse container name in mongo-express
bripkens Jan 10, 2016
7163c8c
Add Kafka formula
bripkens Jan 10, 2016
738c4d8
Add Kafka CLI
bripkens Jan 10, 2016
dcf8cb6
Add artifactory formula
bripkens Jan 10, 2016
338ead7
Add Jenkins formula
bripkens Jan 10, 2016
a590002
Add memcached formula
bripkens Jan 10, 2016
bacb664
Add Nexus formula
bripkens Jan 10, 2016
d77442d
Add sonarqube formula
bripkens Jan 10, 2016
710f0bd
Add rabbitmq formula
bripkens Jan 11, 2016
d846c8d
Improve changelog
bripkens Jan 11, 2016
02f422d
Rewrite rethinkdb formula
bripkens Jan 12, 2016
9a91973
Rewrite orientdb formula
bripkens Jan 12, 2016
975f6d7
Execution of only a single formula at a time is a breaking change
bripkens Jan 12, 2016
fbbe8e4
Use mongo-express 0.29.3
bripkens Jan 13, 2016
bc6409f
Add consul formula
bripkens Jan 14, 2016
be224eb
Add couchdb formula
bripkens Jan 14, 2016
b09f49f
Add PHP formulas
bripkens Jan 16, 2016
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions .bumpversion.cfg
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
[bumpversion]
current_version = 2.0.2

[bumpversion:file:setup.py]

[bumpversion:file:dock/__init__.py]
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
*.pyc
/dist/
/*.egg-info
/build
5 changes: 5 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
# dock changelog

## Unreleased
- Rewrite dock to Python for easier development.
- Use stable Docker image tags where possible to allow reproducible setups.
- Only allow a single formula to be started at a time **(BREAKING)**.

## 1.3.0
- dock is now compatible with docker-machine thanks to [@codingfabian](https://github.com/CodingFabian).

Expand Down
32 changes: 32 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
# Contributing

## Releasing to PyPi
Follow the guide on https://packaging.python.org/en/latest/distributing/
release ideas: https://gist.github.com/audreyr/5990987

```bash
# ensure twine is installed
$ pip install --upgrade twine bumpversion
# remove previous build
$ rm -rf build dist *.egg-info
# Update changelog
$ git add CHANGELOG.md
$ git commit -m "docs(changelog): Prepare changelog for upcoming release"
# increase the version number
$ bumpversion --commit --tag (major|minor|patch)
# generate package info used for the upload to the PyPi registry
$ python setup.py egg_info
# build the project
$ python setup.py bdist_wheel --universal
# ensure that a ~/.pypirc file exists
$ cat ~/.pypirc
# upload
$ twine upload dist/*
```

## Symlinking cloned repository
pip install -e .


## TODOs
- [ ] Handle Docker run errors (see screenshot from 2016-01-10 8:22)
4 changes: 4 additions & 0 deletions FAQ.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# FAQ

## No space left on device with docker-machine
See http://stackoverflow.com/questions/31909979/docker-machine-no-space-left-on-device
61 changes: 0 additions & 61 deletions common

This file was deleted.

196 changes: 0 additions & 196 deletions dock

This file was deleted.

44 changes: 44 additions & 0 deletions dock/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
#!/usr/local/opt/python/bin/python2.7

import argparse

import formula


def print_version():
print('dock {} by Ben Ripkens and contributors'.format('2.0.2'))
print('https://github.com/bripkens/dock')


def main():
parser = argparse.ArgumentParser(prog='dock',
usage='%(prog)s [options] [formula] [formula arguments...]',
description='easily bootstrap development tools with Docker')
parser.add_argument('formulas',
help='Execute the given formulas in the order in which they are defined on the command line.',
nargs='*')
parser.add_argument('-v', '--version',
action='store_true',
help='Display current script version')
parser.add_argument('-l', '--list',
action='store_true',
help='List available formulas')
parser.add_argument('--cleanup',
action='store_true',
help='Remove unused containers and images via docker-gc')
args = parser.parse_args()

if args.version:
print_version()
elif args.cleanup:
formula.execute_formula('docker-gc', [])
elif args.list:
formula.list_available_formulas()
elif len(args.formulas) == 0:
parser.print_help()
else:
formula.execute_formula(args.formulas[0], args.formulas[1:])


if __name__ == '__main__':
main()
Loading