Polymer / tattoo

Test All The Things Over and Over
BSD 3-Clause "New" or "Revised" License
12 stars 3 forks source link

Support local filesystem pointers to git repos to clone from #23

Open usergenic opened 8 years ago

usergenic commented 8 years ago

Right now (in v2 branch) only GitHub repo+branch combinations are supported. It would be nice to be able to point directly at to repository on the filesystem like:

tattoo /path/to/custom-element

also wildcarding/glob supported rules... tattoo /path/to/*-*

This would be extra helpful when pegging a dependency that is being worked on. For example, the following says to test all the custom elements (i.e. hyphenated name repos) on GitHub for MyOrg and use/require the dependency-web-package repo from my local filesystem. tattoo MyOrg/*-* -r /path/to/dependency-web-package

Identifying local path references would be a matter of finding one of 3 signature leader characters: /, ., or ~.

It would be more performant to symlink the folder into the workspace rather than copy or clone it. By symlinking or copying rather than git cloning, it makes it possible to run tests on uncommitted code. Symlinking would be faster, but may not be supported on all platforms (Wincoughdows), so we may need to force Windows to copy. Also if tattoo . is called, the default workspace will be within . as ./tattoo_workspace so a deep copy scenario could be problematic because of the circular source/destination relationship.

I propose symlinking as the default behavior, whereas a git clone should be used if a branch ref is included like /path/to/dependency-web-package#cool-branch-doritos.