uniffi-rs icon indicating copy to clipboard operation
uniffi-rs copied to clipboard

Move circleci docker image to something with shared ownership

Open rfk opened this issue 4 years ago • 2 comments

Our CircleCI tests currently use a custom docker image rfkelly/uniffi-ci in order to execute with the appropriate Kotlin environment, Swift tooling, etc. This image is currently owned by me and I'm the only one that can push to it.

Let's remove this single point of access failure.

Short-term, it seems I can add individual collaborators to the image, so @jhugman @mhammond @lougeniaC64 @dmose and anyone else who'd like the ability to update that image, please let me know your dockerhub username and I can add you.

Longer term, it would be good to have this image be owned by the mozilla dockerhub organization, or some similar arrangement with more scalable access control management. Perhaps we could even build it in CI and arrange for it to be automatically published in a similar way to how e.g. FxA releases are automatically pushed to dockerhub?

┆Issue is synchronized with this Jira Task ┆Issue Number: UNIFFI-57

rfk avatar May 17 '21 10:05 rfk

Short-term, it seems I can add individual collaborators to the image, so @jhugman @mhammond @lougeniaC64 @dmose and anyone else who'd like the ability to update that image, please let me know your dockerhub username and I can add you.

It's probably still worth us doing this @mhammond @jhugman, if you're interested - you would just need to sign up for an account on https://hub.docker.com/

rfk avatar Aug 02 '21 03:08 rfk

I like the idea of building that on CI and pushing that right away. Building that image on each push to main might be a bit much. What do you think about using git tags for that? Tagging something docker-vX will instruct CI to build and push the image as :latest and :vX. Subsequent builds will then pick up that image (:latest), and if something breaks we can still go back to the :vX image if necessary.

(I guess I will "just" have to reach out to ops to add the DOCKER_* environment variables to our environment)

For reference: Here's the script to deploy the syncserver image

badboy avatar Aug 04 '21 10:08 badboy