Closed Bug 1759065 Opened 2 years ago Closed 2 years ago

stop building rust-minidump every build

Categories

(Socorro :: General, task, P2)

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: willkg, Assigned: willkg)

Details

Attachments

(1 file)

Before December 2021, Socorro was using minidump-stackwalk. I had put that in a separate GitHub repository and I would cut "releases" periodically. A release would result in a Docker image getting built and uploaded to dockerhub. Then the Socorro build would download that image, mount it, and grab the stackwalker binaries. That was terrible, but fine.

In December 2021, we switched from minidump-stackwalk to rust-minidump. The way I implemented that was by adding it as an intermediary stage in the Socorro Dockerfile. Building rust-minidump takes the bulk of build time and it's pretty CPU intensive. We've got docker layer caching enabled in CircleCI, but because of the way CircleCI works, I'm still seeing a lot of rebuilds of rust-minidump.

We're at a point where we should build rust-minidump artifacts and download them at Socorro build time rather than build rust-minidump every Socorro build. This bug covers figuring out how we want to do that.

Assignee: nobody → willkg
Status: NEW → ASSIGNED

I need to be able to:

  1. know from the filename/url what version it is
  2. host multiple versions a the same time so we can migrate forward and backward between versions
  3. download it without logging in
  4. maintain this in a way that isn't bespoke and totally weird

Possible options:

  • use GitHub to host build artifacts (releases or github packages repo)
  • upload artifacts to an S3 / GCS bucket
  • build Docker images and push them to dockerhub like we did with minidump-stackwalk
  • build rust-minidump in Firefox CI and host artifacts there
  • something else?

Jason: Do you have a preference here?

Flags: needinfo?(jthomas)

I don't have a strong preference here but I'd lean towards either "Use Github to host artifacts" or "build Docker images and publish them to Dockerhub".

Flags: needinfo?(jthomas)

I think I'm going to see if I can do this all with GitHub releases. Then I don't need additional services, permissions, or whatever.

I put together a new repo for building rust-minidump stackwalker. I put together a release:

https://github.com/mozilla-services/socorro-stackwalk/releases/tag/v20220830.0

This got pushed to prod in bug #1790838 just now. Marking as FIXED.

Status: ASSIGNED → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: