mirror of
https://github.com/edgelesssys/constellation.git
synced 2025-04-21 23:59:09 -04:00
Move type switch for better error reporting
Signed-off-by: Daniel Weiße <dw@edgeless.systems>
This commit is contained in:
parent
3e91f1a53f
commit
b3fbd44b5b
@ -190,13 +190,6 @@ func (c *verifyCmd) verify(cmd *cobra.Command, verifyClient verifyClient, config
|
||||
var attDocOutput string
|
||||
switch c.flags.output {
|
||||
case "json":
|
||||
if !(attConfig.GetVariant().Equal(variant.AzureSEVSNP{}) ||
|
||||
attConfig.GetVariant().Equal(variant.AWSSEVSNP{}) ||
|
||||
attConfig.GetVariant().Equal(variant.GCPSEVSNP{}) ||
|
||||
attConfig.GetVariant().Equal(variant.AzureTDX{})) {
|
||||
return errors.New("json output is only supported for SEV-SNP and TDX variants")
|
||||
}
|
||||
|
||||
attDocOutput, err = formatJSON(cmd.Context(), rawAttestationDoc, attConfig, c.log)
|
||||
case "raw":
|
||||
attDocOutput = fmt.Sprintf("Attestation Document:\n%s\n", rawAttestationDoc)
|
||||
@ -256,13 +249,14 @@ func formatJSON(ctx context.Context, docString string, attestationCfg config.Att
|
||||
return "", fmt.Errorf("unmarshalling attestation document: %w", err)
|
||||
}
|
||||
|
||||
if (attestationCfg.GetVariant().Equal(variant.AWSSEVSNP{}) ||
|
||||
attestationCfg.GetVariant().Equal(variant.AzureSEVSNP{}) ||
|
||||
attestationCfg.GetVariant().Equal(variant.GCPSEVSNP{})) {
|
||||
switch attestationCfg.GetVariant() {
|
||||
case variant.AWSSEVSNP{}, variant.AzureSEVSNP{}, variant.GCPSEVSNP{}:
|
||||
return snpFormatJSON(ctx, doc.InstanceInfo, attestationCfg, log)
|
||||
case variant.AzureTDX{}:
|
||||
return tdxFormatJSON(doc.InstanceInfo, attestationCfg)
|
||||
default:
|
||||
return "", fmt.Errorf("json output is not supported for variant %s", attestationCfg.GetVariant())
|
||||
}
|
||||
|
||||
return tdxFormatJSON(doc.InstanceInfo, attestationCfg)
|
||||
}
|
||||
|
||||
func snpFormatJSON(ctx context.Context, instanceInfoRaw []byte, attestationCfg config.AttestationCfg, log debugLog,
|
||||
|
Loading…
x
Reference in New Issue
Block a user