Giter Club home page Giter Club logo

tarantino's People

Contributors

darrenmce avatar mpareja avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

mpareja

tarantino's Issues

unable to remove workspace

Perhaps this happened because I blew away the workspace directory before removing it from Tarantino. Or maybe it is related to using local Tarantino?

mpareja ~/projects 
$ rm -rf ttws/

mpareja ~/projects 
$ ~/projects/tarantino-oss/tt workspace rm sample
sample is not a registered workspace

mpareja ~/projects 
$ ~/projects/tarantino-oss/tt workspace ls
sample  tix  ts

mpareja ~/projects 
$ ~/projects/tarantino-oss/tt workspace rm sample
sample is not a registered workspace

mpareja ~/projects 
$ ~/projects/tarantino-oss/tt workspace current
sample -> /home/mpareja/projects/ttws

tarantino does not consider container_name setting for services

Docker compose files allow you to specify a container_name for services. Attempting to reference those containers with tarantino will result in an error. Example: tt ip someservice fails because the container name was set to someservice, rather than the typical <namespace>_someservice_<instance number>.

add a `tt -v | --version` command

easiest way to get this without having to change our workflow is to make use of the command:
git describe --always --tags

and maybe pushing a tag or two on milestones

what do you think? @mpareja

Support having plugins contribute to top-level `usage` information

Below is the approach we've taken so far. Not sure if I like it but it worked. We should either

  1. support a way for plugins to append usage information officially; or
  2. document this as an example approach for the time being

Here's what I've done to address this in the interim:

save_function() {
    local ORIG_FUNC=$(declare -f $1)
    local NEWNAME_FUNC="$2${ORIG_FUNC#$1}"
    eval "$NEWNAME_FUNC"
}

save_function tt_usage tt_old_usage
tt_usage() {
	tt_old_usage
	echo
	echo custom commands:
	echo
	echo '  api - launch the api homepage in your browser'
	echo '  data [command] - load stubbed out data'
	echo '  grafana - launch grafana in your browser'
	echo '  logs - launch real-time log monitoring in your browser'
	echo '  smithers - launch smithers in your browser'
	echo '  utopia - launch utopia in your browser'
}

revisit README

lots of out of date stuff in there, and some 360 stuff

feature: support auto-cloning of source control backed services

We like that Tarantino can clone your source control repositories on the fly. We also like that Tarantino doesn't try and clone repositories for services that aren't source control backed (like mongo, redis, etc.).

We have a few responsibilities that need to be filled one way or another, implicitly or explicitly:

  • know which services are SCM backed (and which are not)
  • know the URL to the source control repository for each service
  • know the type of source control repository (git, svn, mercurial)

Our original Tarantino model assumed a few things about source control:

  1. all repositories use Git
  2. all repositories belong to one GitHub organization
  3. all repository names precisely match docker-compose service names

We need to decide how to add this functionality. We need to be cognizant that changing how we fulfill the set of responsibilities noted above will impact Tarantino users - even if that's only 360 for now.

OSX coreutils support

Tarantino uses some coreutils features that are not available in the older version of coreutils that is included in OSX (due to GPL issues). Here are the instances of this that I have noticed:

  • md5sum is not available in OSX. See here and here.
  • The older version of sort on OSX does not support the -V option. See here and here.
  • The older version of ln on OSX does not support the -r option. See here.

There may be more occurrences of this kind of thing that I haven't found yet.

One (quick) fix is to use brew install coreutils to get the latest version of GNU coreutils. In order to avoid conflicts with the existing version of coreutils, these versions are prefixed with the letter g. This means that we would have to use if [[ "$OSTYPE" == "darwin"* ]] in the scripts to determine the OS type. I'm not sure whether or not this is a good approach, but it works.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.