code: func (m HostCertificateManager) InstallServerCertificate(ctx context.Context, cert string) error {
  	req := types.InstallServerCertificate{
  		This: m.Reference(),
  		Cert: cert,
  	}
  
  	_, err := methods.InstallServerCertificate(ctx, m.Client(), &req)
  	if err != nil {
  		return err
  	}
  
  	// NotifyAffectedService is internal, not exposing as we don't have a use case other than with InstallServerCertificate
  	// Without this call, hostd needs to be restarted to use the updated certificate
  	// Note: using Refresh as it has the same struct/signature, we just need to use different xml name tags
  	body := struct {
  		Req *types.Refresh         `xml:"urn:vim25 NotifyAffectedServices,omitempty"`
  		Res *types.RefreshResponse `xml:"urn:vim25 NotifyAffectedServicesResponse,omitempty"`
  		methods.RefreshBody
  	}{
  		Req: &types.Refresh{This: m.Reference()},
  	}
  
  	return m.Client().RoundTrip(ctx, &body, &body)
  }
docs: // InstallServerCertificate imports the given SSL certificate to the host system.