Closed chrismwendt closed 6 years ago
I found out that Travis only gives you 3 GB of RAM, which is not enough to build haskell-ide-engine. It seems we'll have to build and push Haskell manually, unless we can automate it some other way.
I found out that Travis only gives you 3 GB of RAM, which is not enough to build haskell-ide-engine. It seems we'll have to build and push Haskell manually, unless we can automate it some other way.
Could we not push a new image which has haskell-ide-engine compiled? Then use that as the base?
Could we not push a new image which has haskell-ide-engine compiled? Then use that as the base?
Oh good idea, I'll go that route :+1:
I built and pushed https://hub.docker.com/r/sourcegraph/haskell-ide-engine/ We need to manually build and push it whenever we want to update haskell-ide-engine (updates to lsp-adapter will go through the usual Travis CI). The tag is the first 7 characters of the git hash of haskell-ide-engine.
@chrismwendt are there instructions for rebuilding it? Is the Dockerfile public? Would Docker hub maybe be able to build it automatically (vs Travis)?
@felixfbecker I'm adding instructions in https://github.com/sourcegraph/lsp-adapter/pull/77
Ideally, the owner of https://github.com/haskell/haskell-ide-engine would set up a Docker build. Until then, we'll manually build and push sourcegraph/haskell-ide-engine whenever we want to update it.
Haskell :tada: I put some comments in the Dockerfile to explain parts that aren't obvious at first glance.
This image takes around 20 minutes to build because it compiles haskell-ide-engine from source (~200 dependencies), since there are no binary releases that I'm aware of.
TODO
[ ] Make sure this builds on CI (2 GB for3 GB is not enough either so we'll have to manually build and push the Haskell image to the Docker Hubdocker build
is not enough, but 8 GB works on my laptop - click the Docker icon in the icon bar, go to preferences, advanced, increase memory, then restart Docker for Mac)