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
zef install fails when building a Dockerfile in Travis #214
Comments
The t/ tests don't make any network requests, and in fact all the real testing happens in xt/ (which isn't run by rakudobrew/zef). So the test failure is probably in https://github.com/ugexe/zef/blob/master/t/utils-filesystem.t which make me think it is either something like |
It's run inside a container, and it should be the self-same one locally and
anywhere else. Only think I can think of is the underlying filesystem where
everything is running, which should be different. But I don't know how this
might affect the build. I also had a similar error in another one,
File::Which (if I remember correctly). But I need to know what is precisely
the problem what is the matter with the filesystem.
|
The only difference I have found is the one mentioned here: https://forums.docker.com/t/what-is-dirperm1-supported/2550/2 Locally, dirperm1 is false (and kernel 3.13) and Travis uses dirperm1 true (and kernel 4.4). However, it should have been the other way round, something not working locally and working in Travis, right? |
To get the precise test failure, run the following after installing rakudo: It's also probably a good idea to add the |
OK, I'll do that. Meanwhile, my hunch is that it's related to an AUFS bug related to permissions https://github.com/sfjro/aufs3-linux/tree/aufs3.18/Documentation/filesystems/aufs |
There does not seem to be a problem with the test phase, but with the installation phase itself. I'm running it with verbose to see what's going on https://travis-ci.org/JJ/alpine-perl6/builds/310572021 |
You need to call |
Yep, I've added that now. Thanks anyway. |
|
It's working now https://travis-ci.org/JJ/alpine-perl6 |
I suspect installing |
But would that differences in exit code account for the error in installation? |
If you are referring to |
Not sure about that... Since the other thing that has changed is the path, could that be it? We're running it now from the top directory. |
And the other thing is the openssl-dev package. If zef depends on that, it might fail for that reason... Bringing me back to my #215 issue: more information is needed on failure. We really don't know why it failed before... |
Perhaps... maybe that + precomp end up with it trying to write somewhere it shouldn't. You might try to |
zef doesn't depend on openssl-dev |
It's building up nicely now... https://travis-ci.org/JJ/alpine-perl6/builds/310587658 |
@ugexe beats me, then... It must be the .precomp thing, combined with the difference in storage driver locally and in Travis or Docker hub. Thanks for all your help, much appreciated! |
Check out this https://travis-ci.org/JJ/alpine-perl6/builds/310471878
It also fails, same error, in Docker hub
Context
Building locally this Dockerfile https://github.com/JJ/alpine-perl6/ works without a problem. However, it fails in Travis and Docker Hub.
Expected Behavior
I would expect it to work exactly the same way, since Dockerfile descriptions are unambiguous. It might have to do with the Docker cache, but I would expect it to fail locally, not in the cloud.
Actual Behavior
Error as above https://travis-ci.org/JJ/alpine-perl6/builds/310471878
And here too: https://hub.docker.com/r/jjmerelo/alpine-perl6/builds/bpuk3prltfj87pxv2ksyrp3/
Steps to Reproduce
Fork and download the repo, configure it for a Travis build, and push it
Your Environment
I'm using rakudobrew build moar, and rakudobrew build zef after that in an Alpine container as above.
The text was updated successfully, but these errors were encountered: