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 bothbblfshd
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 rebuildingbblfshd
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