bblfsh / bblfshd

A self-hosted server for source code parsing

Home Page:https://doc.bblf.sh

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Periodically update image with pre-installed drivers

lwsanty opened this issue · comments

Pre-history

Currently we build docker image with all pre-installed drivers only when travis ci is triggered(on per-commit to master basis)

Thus we skip new driver versions until the next ci trigger for bblfshd

Proposal

Add cron job to bblfshd's travis ci so we will have an ability to update drivers once in a period

Problems

  • is not set up in config, so we need to file an issue to infra and mention desired period
  • what should we do if no changes detected? IMO we can allow travis to run on the repo with no changes in drivers since the prev time, because in case of the same images the won't be pushed.

This makes a lot of sense, but we should also think about a few more things:

  • If we always update builtin drivers, it won't be possible for anymore to lock bblfshd version with a specific versions of builtin drivers. Maybe we can come up with some tag naming scheme to cover both bblfshd version and drivers? (x.y.z-drivers-2019-09?)
  • When updating, we should probably reuse existing bblfshd image and install drivers over it, instead of rebuilding bblfshd again. This will make sure the change is incremental in regards to Docker layers.

@vmarkovtsev wdyt about @dennwc 's comment, will it be useful for ML team?

As long as there is a tag which includes both the bblfshd version and the drivers date, it should be fine.

Speaking about us, we always install the drivers manually and choose only those which we need. We could switch to the full image if it is updated regularly.

need to wait for https://github.com/src-d/infrastructure/issues/1203 until changes start to work

I know this is already closed, but found when bumping sourced-ce with the new v2.16.1-drivers release:
Did you consider to release, with the cron-ed release, an extra v2.16.1-drivers-latest one?

I think this is related: #329