* feat: added mozcloud-publish workflow to create and push container images to GAR when a preview label is added to a pull request
* feat: using latest version of build-and-push workflow without `package: write` requirements
* feat: Dockerfile changes to reduce build cache usage
In #1907, we saw the GHA runner running out of disk space due to a a large Docker build cache (~16GB). The goal of this PR is to reduce cache size while maintaining fast successive build times.
Changes:
- Consolidated build stages: Merged cacher and builder stages
- Added BuildKit cache mounts: Added --mount=type=cache for Cargo registry, git, and target directories, keeping dependency caches persistent across builds without inflating layer sizes
- Pre-built Python wheels: Generate all Python dependency wheels in the builder stage and install from local cache in final stage, eliminating need for build tools in final image
- Removed unnecessary packages (golang-go, build-essential, cargo, cmake, libpq-dev) from final stage, keeping only essential runtime libraries
* Add progress=plain to `docker build` commands in Circle workflows
---------
Signed-off-by: Graham Beckley <gbeckley@mozilla.com>
Co-authored-by: Dustin Lactin <dlactin@mozilla.com>