Keycloak 在kubernetes头盔安装期间在Keyclope中设置王国

Keycloak 在kubernetes头盔安装期间在Keyclope中设置王国,keycloak,kubernetes-helm,Keycloak,Kubernetes Helm,我正在尝试将keydape设置为运行一些集成测试所需的头盔图表。我可以让它启动并运行它,但我不知道如何设置我需要的领域和客户端。我已经切换到今天发布的1.0.0稳定版: 我想使用图表中定义的keydove.preStartScript,并使用/opt/jboss/keydove/bin/kcadm.sh管理脚本来实现这一点,但显然,他们所说的“预启动”是指在服务器启动之前,因此kcadm.sh无法进行身份验证。如果我省略了keydape.preStartScript,我可以将其放入keydap

我正在尝试将
keydape
设置为运行一些集成测试所需的头盔图表。我可以让它启动并运行它,但我不知道如何设置我需要的领域和客户端。我已经切换到今天发布的1.0.0稳定版:

我想使用图表中定义的
keydove.preStartScript
,并使用
/opt/jboss/keydove/bin/kcadm.sh
管理脚本来实现这一点,但显然,他们所说的“预启动”是指在服务器启动之前,因此
kcadm.sh
无法进行身份验证。如果我省略了
keydape.preStartScript
,我可以将其放入keydape容器中,并在其启动和运行后运行我想要使用的
kcadm.sh
脚本,但它们作为预启动脚本的一部分失败

以下是我的
要求。yaml
用于我的图表:

dependencies:
- name: keycloak
  repository: https://kubernetes-charts.storage.googleapis.com/
  version: 1.0.0
keycloak:
  keycloak:
    persistence:
      dbVendor: H2
      deployPostgres: false
    username: 'admin'
    password: 'test'
    preStartScript: |
      /opt/jboss/keycloak/bin/kcadm.sh config credentials --server http://localhost:8080/auth --realm master --user admin --password 'test'
      /opt/jboss/keycloak/bin/kcadm.sh create realms -s realm=foo -s enabled=true -o
      CID=$(/opt/jboss/keycloak/bin/kcadm.sh create clients -r foo -s clientId=foo -s 'redirectUris=["http://localhost:8080/*"]' -i)
      /opt/jboss/keycloak/bin/kcadm.sh get clients/$CID/installation/providers/keycloak-oidc-keycloak-json
  persistence:
    dbVendor: H2
    deployPostgres: false
这是我的图表的
values.yaml
文件:

dependencies:
- name: keycloak
  repository: https://kubernetes-charts.storage.googleapis.com/
  version: 1.0.0
keycloak:
  keycloak:
    persistence:
      dbVendor: H2
      deployPostgres: false
    username: 'admin'
    password: 'test'
    preStartScript: |
      /opt/jboss/keycloak/bin/kcadm.sh config credentials --server http://localhost:8080/auth --realm master --user admin --password 'test'
      /opt/jboss/keycloak/bin/kcadm.sh create realms -s realm=foo -s enabled=true -o
      CID=$(/opt/jboss/keycloak/bin/kcadm.sh create clients -r foo -s clientId=foo -s 'redirectUris=["http://localhost:8080/*"]' -i)
      /opt/jboss/keycloak/bin/kcadm.sh get clients/$CID/installation/providers/keycloak-oidc-keycloak-json
  persistence:
    dbVendor: H2
    deployPostgres: false

另一个令人烦恼的是,我需要在这两个地方定义持久性设置,否则它要么失败,要么出现
postgresql
,除了
keydave

之外,我也尝试过,也遇到了这个问题。我更喜欢将-Dimport与realm.json文件一起使用,但您的观点表明postStartScript选项是有意义的,因此我已将这两个选项都包含在关于该问题的PR中

密钥斗篷图表已更新。看看这些PRs: