hgop / syllabus-2022

0 stars 1 forks source link

secret problems #27

Closed Sigurgeirstephensen closed 2 years ago

Sigurgeirstephensen commented 2 years ago

við höldum áfram að fá þetta error þegar við erum að reyna að deploy pipelinið í step 3 og við skiljum ekki hvað vandamálið gætti verið og hvað við getum gert til að laga þetta höfum prófað allt til að skilja hvað gætti verið að láta þetta gerast

deployment.apps/smackmytest unchanged
ingress.networking.k8s.io/smackmytest unchanged
service/smackmytest unchanged
configmap/connect4-server unchanged
deployment.apps/connect4-server unchanged
ingress.networking.k8s.io/connect4-server unchanged
job.batch/connect4-migrations created
service/connect4-server unchanged
deployment.apps/httpbin unchanged
ingress.networking.k8s.io/httpbin unchanged
service/httpbin unchanged
Error from server (BadRequest): error when creating "connect4-server.yaml": Secret in version "v1" cannot be handled as a Secret: v1.Secret.Data: decode base64: illegal base64 data at input byte 0, error found in #10 byte of ...|ASSWORD}}","DATABASE|..., bigger context ...|data":{"DATABASE_PASSWORD":"{{DATABASE_PASSWORD}}","DATABASE_USERNAME":"{{DATABASE_USERNAME}}"},"kin|...

Exited with code exit status 1
baldurfb commented 2 years ago

Secrets verða að vera encoded í base64.

echo "secret" | base64
c2VjcmV0Cg==
Fanneyyy commented 2 years ago

Kannski prófa echo -n "mega_secret_key" | base64 bara til að vera viss?

magga-sola commented 2 years ago

Við fengum sömu villu, notuðum upprunalega echo "secret" | base64 og prófuðum síðan echo -n "mega_secret_key" | base64 en það virkaði ekki fyrir okkur. Höfum líka decode-að og encode-að það fram og tilbaka til þess að vera viss um að þetta væru valid base64 strengir.

Fanneyyy commented 2 years ago

þetta er mjög steikt, en kannski til að finna betur hvaðan villan kemur, getið prófað að setja base64 encoded username og password beint í þennan file hjá ykkur: https://github.com/hgop/hgop-connect4-server-base-2022/blob/main/k8s/secret.template.yaml

KypsLloyd commented 2 years ago

Fékk sömu villu, echo "secret".... og echo "mega_secret_key".... etc virkuðu ekki fyrir mig.

En það sem lagaði villuna var að bæta inn 2 env var í circleci "CONNECT4_SERVER_DATABASE_PASSWORD" fyrir passwordið og "CONNECT4_SERVER_DATABASE_USERNAME" fyrir usernameið, því það s.s. 'subtitutar' yfir 'i {{DATABASE_USERNAME}} og {{DATABASE_PASSWORD}} í k8s image

valueinn fyrir env variable-inn þurfa samt að vera encode-uð base64 af username og password sem þið gerðuð í Part 2 Step 2 notaði https://www.base64encode.org/ til að gera það.