Keycloak 如何在Kubernetes上的Keyclope Operator部署上创建自定义主题? 完整流程有点像这样: 步骤1:应用所有相关YAML 步骤2:验证吊舱是否正在运行。快乐地奔跑。 步骤3:创建新领域和客户端

Keycloak 如何在Kubernetes上的Keyclope Operator部署上创建自定义主题? 完整流程有点像这样: 步骤1:应用所有相关YAML 步骤2:验证吊舱是否正在运行。快乐地奔跑。 步骤3:创建新领域和客户端,keycloak,keycloak-services,keycloak-operator,Keycloak,Keycloak Services,Keycloak Operator,我们如何使用CRD来使用或创建新的KeyClope主题 对于问题的第一部分,如果您想添加/更改KeyClope操作员本机识别的字段(即领域主题),您需要做的唯一更改是添加到每个领域CRD,如下所示: spec: realm: id: Realm_ID ... loginTheme: "my_login_theme" 对于第二部分(即创建新的KeyClope主题): 你不能。首先创建新主题,将新主题的文件夹添加到keydeport部署中,然后添加到

我们如何使用CRD来使用或创建新的KeyClope主题

对于问题的第一部分,如果您想添加/更改KeyClope操作员本机识别的字段(即领域主题),您需要做的唯一更改是添加到每个领域CRD,如下所示:

spec:
  realm:
    id: Realm_ID
    ...
    loginTheme: "my_login_theme"
对于第二部分(即创建新的KeyClope主题):

你不能。首先创建新主题,将新主题的文件夹添加到keydeport部署中,然后添加到keydeport操作符,如前所述

keydrope Operator/deploy/crds/keydrope.org\u keydepeartrealms.yaml
中检查keydrope操作员是否支持
loginTheme
字段搜索。如果不存在,则需要添加:

            loginTheme:
              description: Login Theme
              type: string
            loginWithEmailAllowed:
              description: Login with email
              type: boolean
此外,在
pkg/api/keydepeat/v1alpha1/keydepearlm_type.go
中,您需要将该额外字段添加到
keydepearlm
结构中,即:

type KeycloakAPIRealm struct {
    // +kubebuilder:validation:Required
    // +optional
    ID string `json:"id"`
    // Realm name.
    // +kubebuilder:validation:Required
    Realm string `json:"realm"`
    // Realm enabled flag.
    // +optional
    Enabled bool `json:"enabled"`
    // Login Theme name 
    // +optional
    LoginTheme string `json:"loginTheme,omitempty"`
    .....
}
构建项目并运行

$ ls
cluster-config.yaml  keycloak_backup.yaml   keycloaks_crd.yaml    namespace.yaml  role_binding.yaml  my-client.yaml
xyz                  keycloak_users.yaml    keycloaks_realm.yaml  operator.yaml   sa.yaml            my_realm.yaml
keycloak.yaml        keycloaks_client.yaml  keyclok-ing.yaml      role.yaml       themes             myrealm-realm.yaml
spec:
  realm:
    id: Realm_ID
    ...
    loginTheme: "my_login_theme"
            loginTheme:
              description: Login Theme
              type: string
            loginWithEmailAllowed:
              description: Login with email
              type: boolean
type KeycloakAPIRealm struct {
    // +kubebuilder:validation:Required
    // +optional
    ID string `json:"id"`
    // Realm name.
    // +kubebuilder:validation:Required
    Realm string `json:"realm"`
    // Realm enabled flag.
    // +optional
    Enabled bool `json:"enabled"`
    // Login Theme name 
    // +optional
    LoginTheme string `json:"loginTheme,omitempty"`
    .....
}