Столкнувшись с некоторыми проблемами при попытке создать секреты в kubernetes - PullRequest
3 голосов
/ 29 января 2020

Мне нужно сохранить некоторые пароли и имена пользователей в секретах. YAML. Но после развертывания получаю эту ошибку. Поэтому не могу создать секрет и получить доступ к нему в модулях. Прикрепление deploy.yaml и секретов .yaml ниже.

- Secrets.yaml

    apiVersion: v1
    kind: Secret
    metadata:
      name: mysecret
    data:
       CassandraSettings__CassandraPassword: [[ .Environment ]]-abcd-cassandra-password

--- Deployment.yaml

     env:
          - name: Password
            valueFrom:
                secretKeyRef:
                  name: mysecret
                  key: CassandraSettings__CassandraPassword

После развертывания в TeamCity Получение этой ошибки

Ошибка сервера (BadRequest): ошибка при создании «STDIN»: Секрет в версии «v1» не может быть обработан как Секрет: v1.Secret.ObjectMeta: v1.ObjectMeta.TypeMeta : Kind: Data: декодировать base64: недопустимые данные base64 на входном байте 3, ошибка найдена в байте # 10 из ... | -password "}," kind ":" | ..., больший контекст ... | _CassandraPassword " : "dev-bling-cassandra-password"}, "kind": "Secret", "metadata": {"annotations": {"kube | ... Ошибка анализа STDIN: ошибка преобразования YAML в JSON: yaml: строка 33: индикатор «-» не найден

1 Ответ

1 голос
/ 29 января 2020

Похоже, что тип отсутствует, вы можете попробовать, как показано ниже,

--- Secrets.yaml

apiVersion: v1
kind: Secret
metadata:
  name: mysecret
type: Opaque
data:
  CassandraSettings__CassandraPassword: [[ .Environment ]]-abcd-cassandra-password

--- Deployment.yaml

    env:
      - name: Password
        valueFrom:
             secretKeyRef:
               name: mysecret
               key: CassandraSettings__CassandraPassword
...