Best Practices for CI/CD w Rivet
I'm looking to add a CI/CD pipeline for my Rivet Unreal project. I already have my Unreal Linux server to Docker process sorted so my only remaining work is really around deployment.
Are there any best practices I should know about for submitting deployments to Rivet? Topics that come to mind:
- build agent auth
- removing older deployments over time
- naming conventions
- docker image size
- rate limits on upload frequency
6 Replies
hey! the rivet cli can auto-genrate a gh actions script based on your rivet.yaml. details here – https://rivet.gg/docs/general/concepts/cli-tips#continuous-integration
all you need is to add a cloud token to the
RIVET_TOKEN secret (see ss #1)
build agent auththe rivet cli handles all auth for you.
removing older deployments over timecurrently no system for this, rivet is eating the cost. we'll email you with a heads up if this changes.
naming conventionsrivet auto-names versions/builds for you (see ss #2). you can override this with what works best for you.
docker image sizecurrent max size is 8 gb. lmk if this is too low for you all.
rate limits on upload frequencycurrently 16 uploads per 15 min. this might need to be increased too.


awesome thanks for the link @Nathan !
One follow up question @Nathan are there any plans to support
podman or podman-desktop in the future? When I attempted to build images previously with podman I had issues with the moby/buildkit . I didn't dig into it to much at the time.interesting, have not heard about issues like this before. it wouldn't be hard to support.
can you give a bit more context on what type of project it was failing with so i can try and reproduce?
Unreal engine, I need to double check that if i was using the rivet-cli provided dockerfiles or not. I've started using my own dockerfiles as i didn't want to bother with the overhead of epics builder images as I'm using unreal engine from source so building dedicated servers doesn't need that step.
gotcha. feel free to send over a dockerfile here or in dm if you'd like.
okay think I managed to remember (this was a while ago so forgive my poor memory) where this came into play, the
rivet build command. https://github.com/rivet-gg/cli/blob/main/cli/src/commands/docker/build.rs . I believe using buildx/buildkit (at least last time I looked) wasnt fully supported in podman yet. looks like that has been resolved in recent releases to podman. I most likely wont revist this for a while. got a lot to do between now and release. Also looks like there may be a flag to use the native build rather than buildx/buildkit with rivet
dockerfile example from my project:
GitHub
cli/cli/src/commands/docker/build.rs at main · rivet-gg/cli
Contribute to rivet-gg/cli development by creating an account on GitHub.