oxidecomputer / oxidecomputer/propolis

consider using mock RoT for PhD tests

Open
#1,108 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

testing
Dominant language
Rust
Stars
270
Forks
42
Avg merge
4d 5h
Merged PRs (30d)
6

Description

#1091 integrated an attestation server, that, in the product, talks to sled-agent, which in turns talks to the RoT. In development of this feature, we relied heavily on mock RoT in the vm-attest crate, which was used to develop demos and iteratively develop MVP VM attestation.

To make PhD work, we simply do not have an attestation server for propolis-server in this case:

https://github.com/oxidecomputer/propolis/blob/2c9d7052cc12b3feca1c5a0e09d10b724b8e7cb4/bin/propolis-server/src/main.rs#L326-L335

(Even if the propolis-server run by PhD had an IPv6 address, it wouldn't have sled-agent, so we would still need to handle this for the phd tests).

It would be nice to add support for using the "mock" RoT to propolis-server for our testing. #1068 may be good to pair with this work.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start at bin/propolis-server/src/main.rs around lines 326-335 and review how the attestation server is configured, then inspect the mock RoT support in the vm-attest crate and the PhD tests. Done means PhD can exercise propolis-server with a mock RoT without an attestation server or sled-agent; consider #1068 alongside this work.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
testing
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.