This topic is a follow up of this twitter conversation: https://twitter.com/StefMa91/status/925066928015794176?s=03
I was trying to build my own build cache server. Unfortunately there a no/limited documentation for
- What gradle will send (e.g. Header, HTTP-Type, format of artifacts)
- What gradle want to receive (e.g. Header, Type, Status-Code)
Which means I have really no idea (beside of “HTTP backend”) what I have to implement on the server side.
Thanks to this GitHub example I found a very basic implementation of a nginx-server.
Later on this example got new commits which says I should use the “official” gradle Docker image.
Unfortunately there is no single documentation how (or even if) to customize it. Something like
- How to change the HTML output?
- Can I change the storage location?
- Can I add other auth options (beside of Basic Auth)?
My goal is to build a gradle build cache server from scratch. Which is totally under my control. To don’t break something in the future I would like to implement it according to some “specifications”/“apis” which can I trust. But such specs or apis aren’t available… So any implementation of a build cache server may (or may not) break in the future…