New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix repository name component error w/ Docker 1.8 #94
Fix repository name component error w/ Docker 1.8 #94
Conversation
Thanks this does fix the error, but we used the double underscore as a unique value to avoid possible collisions with package names. @dirk-thomas do you have a suggestion of a new separator based on the new rules? It looks like we could use a |
A dot sounds good to me. |
Good to know.
I'll test it and update this PR if everything works well. |
It is quite straightforward to change all instances of One other option is to use |
- Comply with Docker's regex for repository name components - Use dots instead of double underscores
f28f08b
to
b79b4dc
Compare
I updated the PR. All double underscores have been replaced by a single dot. |
That looks good. I'll try to find some time to test it this weekend. |
I tested Mani's docker_regexp_fix branch on bwi_common. My development system is Trusty, with docker 1.8.1 installed. For 64-bit Trusty it seems to work, mostly. It did throw an exception at the end:
I doubt that has anything to do with this issue. The desired repository did get built and its tests ran successfully (although the test output is hard to find). |
I tried to test the same repository on Saucy, expecting to get a compile error because of the older yaml-cpp version. Instead, it failed to generate the script:
Perhaps this problem is unrelated. |
Thank you @mani-monaj I can confirm that it fixes the problem with Docker 1.8.x. |
Fix repository name component error w/ Docker 1.8
When will this fix be propagated to user jobs? It's not there yet. |
@dirk-thomas You are welcome.
This is also a known issue and a patch has almost been approved for it. Please check #90 and #93. |
Apparently Docker 1.8 enforces the following regex for container names:
[a-z0-9]+(?:[._-][a-z0-9]+)*
. Therefore it does not allow repetitive_
characters for repository name components. This PR replaces all occurrences of__
with_
inempy
templates to fix this issue. Currently pre-release script fails on Docker 1.8 with the following error:PS. This is the commit in Docker source tree which implements this feature. It must have been presented in Docker releases since v1.7. However I started getting this error after upgrading to Docker v1.8.