-
Notifications
You must be signed in to change notification settings - Fork 18
folder naming issues #16
Description
I just went through some debugging hell with shipwright running on a Jenkins slave. I was trying to get it to build images from a project, but the Jenkins "project name" was not the same as git project name (kind of a long story).
So, the folder ended up being "Test" (with the capital T). Shipwright failed on this in a fairly unfriendly way:
Traceback (most recent call last):
File "/usr/local/bin/shipwright", line 9, in <module>
load_entry_point('shipwright==0.2.2', 'console_scripts', 'shipwright')()
File "/usr/local/lib/python2.7/dist-packages/shipwright/cli.py", line 193, in main
for event in command(*args):
File "/usr/local/lib/python2.7/dist-packages/shipwright/__init__.py", line 101, in build_tree
targets # what needs building
File "/usr/local/lib/python2.7/dist-packages/docker/client.py", line 295, in _stream_helper
assert reader._fp.chunked
AssertionErrorWhich led me on a wild goose chase. I eventually found the issue and switched the Jenkins Git settings to clone to a sub directory by the name of the git project.
It seems that uppercase folder names cause errors. I understand that the "names" property in .shipwright.json can be used to fix this by mapping paths to Docker repository names, but the naming restriction should be documented.
I guess that the git project name could be culled from the remotes, but there's no guarantee that there will be any remotes. Documentation would nice, though :)