cloud-barista / cb-ladybug

Cloud-Barista Multi-Cloud Application Runtime Framework : Support Multi-Cloud Kubernetes Service
Apache License 2.0
11 stars 11 forks source link

test: extraction from google credential(json) in zsh #85

Closed sykim-etri closed 3 years ago

sykim-etri commented 3 years ago

zsh 환경에서 source env.sh 를 실행하면 GCP에 로그인이 되지 않아 아래의 에러가 발생합니다.

ERRO[0910] Cannot do ssh, VM IP is not Running (name=cluster-01-w-2-ez4j4, ip=Not assigned yet, systemMessage={"message":"Post \"https://compute.googleapis.com/compute/v1/projects/sykim-etri-324002/zones/asia-
northeast3-a/instances?alt=json\u0026prettyPrint=false\": private key should be a PEM or plain PKCS1 or PKCS8; parse error: asn1: structure error: tags don't match (16 vs {class:0 tag:13 length:45 isCompound:t
rue}) {optional:false explicit:false application:false private:false defaultValue:\u003cnil\u003e tag:\u003cnil\u003e stringType:0 timeType:0 set:false omitEmpty:false} pkcs1PrivateKey @2"}
)

원인 파악 결과 env.sh에서 jq의 -r 옵션으로 인해 .private_key에 포함된 escape character(\n)의 값에 왜곡된 것 같습니다.(추정) 그래서 -r 옵션을 없애고 이로 인해 문자열의 앞뒤에 생기는 "(double quotes)를 tr -d로 제거하도록 수정하였습니다.

bash와 zsh에서 테스트하여 정상 동작을 확인하였습니다.

jihoon-seo commented 3 years ago

사용자가 zsh 를 사용하고 있어도 env.sh 의 첫번째 라인에 #!/bin/bash 로 되어 있어서 bash로 처리될 것이라고 생각했는데 아닌가보네요.. 🤔 고생하셨습니다 😊