bytebase/bytebase · error

provider_type is required

Error message

provider_type is required

What it means

validateWorkloadIdentityConfig discriminator check: provider_type was left as PROVIDER_TYPE_UNSPECIFIED. A config must commit to a concrete provider type (OIDC, etc.) before its provider-specific fields are meaningful.

Source

Thrown at backend/api/v1/workload_identity_service.go:353

		if jwksURL != "" {
			if err := wif.ValidateJWKSURL(jwksURL); err != nil {
				return err
			}
		}
		if len(config.AllowedAudiences) == 0 {
			return errors.New("allowed_audiences is required for OIDC")
		}
		for _, audience := range config.AllowedAudiences {
			if strings.TrimSpace(audience) == "" {
				return errors.New("allowed_audiences must not contain an empty value")
			}
		}
		if strings.TrimSpace(config.SubjectPattern) == "" {
			return errors.New("subject_pattern is required for OIDC")
		}
		return nil
	case v1pb.WorkloadIdentityConfig_PROVIDER_TYPE_UNSPECIFIED:
		return errors.New("provider_type is required")
	default:
		return errors.New("provider_type is invalid")
	}
}

// convertToWorkloadIdentity converts a store.WorkloadIdentityMessage to a v1pb.WorkloadIdentity.
func convertToWorkloadIdentity(wi *store.WorkloadIdentityMessage) *v1pb.WorkloadIdentity {
	result := &v1pb.WorkloadIdentity{
		Name:  common.FormatWorkloadIdentityEmail(wi.Email),
		State: convertDeletedToState(wi.MemberDeleted),
		Email: wi.Email,
		Title: wi.Name,
	}

	// Convert workload identity config
	if wi.Config != nil {
		result.WorkloadIdentityConfig = convertToAPIWorkloadIdentityConfig(wi.Config)
	}

View on GitHub (pinned to 1870550677)

Solutions

  1. Set provider_type to a supported value such as OIDC
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at backend/api/v1/workload_identity_service.go:353 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of bytebase/bytebase@1870550677 (2026-09-06). Data as JSON: /api/errors/9100f1b702ae3555. Report an issue: GitHub.