marblerun icon indicating copy to clipboard operation
marblerun copied to clipboard

api: Implement a public Go API

Open daniel-weisse opened this issue 9 months ago • 1 comments

Proposed changes

  • Implement a public Go API
    • Provides an easy native Go interface for performing CLI commands that interact with the MarbleRun Coordinator
  • Use Go API as a backend for CLI commands
    • This removes the /cli/internal/rest package, as http calls are made by the API
      • Cert loading and writing from the rest package was moved to the new /cli/internal/certcache package
  • Heavily simplify the code in /internal/attestation and move it to /api/attestation
  • Add /api/v2/recover endpoint with better machine readable responses

Additional info

  • AB#4009
  • I would like to eventually also move the integration test to use the Go API, but as this PR is already quite a bit larger than I originally intended, this will be postponed to a different PR

daniel-weisse avatar May 16 '24 08:05 daniel-weisse