[Solved] Docker Image to compile and test contracts

Hi there,

I would like to compile and run forgae tests in Gitlab CI. Is there a singe image which wraps forgae and single node instance? My goal is to run commands in CI server like:
forgae compile
forgae test

Available docker-compose solution leads to docker-in-docker behaviour, if I want to run that in Gitlab CI or any other, which is complicated.

Hey @alexey

There is no such instance. Not sure how GItlab CI works, but you can just install docker in it and then just make npm install forgae nothing more.

Hope that helps,
Martin

Hi @martingrigorov.chain,

Sure, I can make a Dockerfile to install forgae in the image. However, when I would need to compile my contracts, I need an Aeternity node. Forgae start a test node via forgae node, which in fact a docker-compose launch to start a couple of containers. The whole process would like this:

  1. CI start a build image with npm, forgae in it, etc.
  2. Then forgae node is going to be run, which spawns more containers. (I want to avoid additional containers)

What I would like to have is an image with AE Node + Forgae. Then I just run forgae compile in the the contract folder. I believe Bitbucket CI and Travis work similar. One need to define a build docker image to run build steps.

Hey @alexey,

Currently, the AE node (local) is available only via docker files, so it will spawn some new containers. This is not something that we have the ability to change. We are also using it like this, and I believe that currently, this is the only setup that will work with local node.

Best,
Martin

1 Like

Ok, thank you for the answer.

1 Like