Skip to content

[Heartbeat] Add synthetics deps to main heartbeat docker image #22837

@andrewvc

Description

@andrewvc

As part of moving synthetics to beta we need to have a better packaging strategy. This issue proposes that we include synthetics in our standard heartbeat docker release. This would, unfortunately have the result of dramatically increasing the size of this docker image due to the inclusion of the chrome browser, dependencies for it, and node runtime. This would increase our docker image size from 327MiB to 1.15GiB.

That's a significant change, one we should discuss here. The only alternative to that would be to continue releasing separate images but this is a bad idea for a few reasons:

  1. Heartbeat is usually installed on a dedicated server (esp. if it's installed as a docker image), so the extra disk space is probably not an issue.
  2. Maintaining two docker images will be confusing for users
  3. The heartbeat docker image will eventually lose favor to the agent docker image anyway, where we'll have to revisit this same issue, so putting the extra work into maintaining two docker images there still doesn't make sense.

The work to do this would essentially involve 👍

  1. Adding the synthetics Dockerfile to the current Heartbeat Dockerfile.
  2. Patching heartbeat to periodically update the synthetics node package to keep the browser evergreen

This would also mean that we would no longer release synthetics docker images on their own schedule, but rather, only with the stack.

Metadata

Metadata

Assignees

Labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions