Open
Conversation
Is this worth the complexity?
Bamboo's old docker can't handle dockerfiles not in the build context
It may have been messing up Bamboo?
This should be fine to maintain directly? We could also copy it out somewhere
This allows us to run docker-bash after a failed test run
The former because the default is gnu++1z which is good enough and c++17 broke some test, and the latter because it's not supported in the version of CMake being used and isn't critical
So we at least don't use constantly expanding tmp space
|
Shouldn't this be in openmix2.0/deps/folly? |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This isn't a real mergeable PR cause it's not to the master branch and there's still some finishing to do (there's a hardcoded version, for instance), but it serves to show the changes to get building with a Docker build.
The basic overview is that the build now no longer directly builds anything, it just uses Folly's docker build to do so. This means the make dependencies are pretty flimsy (e.g. changing files in the repo won't cause a rebuild), but that seems fine for this use case.
The process in a little more detail:
fbcode_builder/make_docker_context.pyto generate the Dockerfile and tar up the local repo, using our modifiedfbcode_builder_config.pyto make it a Release builddocker buildthat Dockerfile to build FollyI ran
apt-get remove cdx-follyin my build env and then installed the deb this docker build spits out, and Newzinter built fine. Appserver is a different story with all its static linking, I'm not sure where to start there.