Skip to content

Add progenitor-based client for sled-agent-sim? #8900

@jgallagher

Description

@jgallagher

sled-agent-sim has a few endpoints that don't exist on sled-agent and aren't part of the real sled-agent dropshot API. Our sled-agent-client has methods that call these endpoints by dropping down to reqwest.

#8895 made the first versioned change to the sled-agent API, which broke these methods because they weren't getting the api-version header that progenitor adds in its generated method. That PR works around this by manually adding that header in each of these endpoints, but that's a little janky. It's probably okay for the time being, but @davepacheco suggested an alternative: we could define a lockstep dropshot API containing only the extra sled-agent-sim endpoints and add a progenitor client for that API to ControlPlaneTestContext. Then we'd get api-version for free, we wouldn't need these extra methods at all, and we'd continue to get any future changes that rely on progenitor.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions