Drone

How to push a .tar.gz docker image on Drone Cloud?

I have a build process that outputs Docker image in the .tar.gz format (using nix). I’ve got no idea how to integrate it into my CI flow on Drone Cloud [“Cloud” part being relevant here].

Normally I’d do:

nix build -f nix/docker.nix

docker load < result
docker tag ...
docker push ...

however on Drone Cloud dind is not an option (afaik), so I can’t do that. The gist is that I’d like to tag and push an image that I already have on the filesystem in the tar.gz

Is there a way I could work around this on Drone Cloud?

Tried so far:

  • dind - a no-go on Drone Cloud
  • I’ve looked at plugins/docker documentation yet loading an image is not an option
  • I’ve tried crane from Google, yet the publically avaible images seam to crash when I type crane push, something about base64 encoding, didn’t purse this further
  • Tried to explore a possiblity of building a Docker image from .tar.gz via Dockerfile but this seams like an overkill
  • Kaniko - doesn’t look like it’s solving this particular problem