JSON 파일 자체 내에서 데이터 교체와 쉘 환경 교체(및 쉘 함수 호출)를 관리할 수 있는 JQ 함수를 설계하고 싶습니다. 예를 들어 이런 파일이 있는데...
{
"services" : {
"blah" : {
"server" : "https://my.server.home",
"role_id" : "ABC",
"login" : {
"path" : "v1/auth/approle/login",
"connection_data" : {
"role_id" : "{{services.blah.role_id}}",
"secret_id" : "${BLAH_SECRET}.${MY_DEFINED_ENVVAR}"
},
"other" : "$( get_workspace )/ght"
}
}
},
"applications" : {
"curl" : {
"version" : "7.80"
}
}
}
다음과 같은 결과를 얻고 싶습니다.
{
"services": {
"blah": {
"server": "my.server.home",
"role_id": "ABC",
"login": {
"path": "v1/auth/approle/login",
"connection_data": {
"role_id": "ABC",
"secret_id": "my-secret.xyz"
},
"other": "/abc/my_workspace/ght"
}
}
},
"applications": {
"curl": {
"version": "7.80"
}
}
}
그렇게 하면서 JSON 파일에 대한 내부 액세스를 설명하는 데 사용되는 태그를 제어하여 어떤 셸 함수와 셸 환경 변수를 실행해야 하는지 표시하는 데 사용되는 태그를 대체할 수 있기를 바랍니다.
내 생각에 올바른 방법은 jq를 사용하는 것입니다.걷다방법은 테스트에 적합한 기능과 함께 사용됩니다.끈행은 더 이상 변경되지 않을 때까지(즉, 모든 교체가 완료될 때까지) 여러 번 처리될 수 있습니다.
어떤 제안이 있으십니까? ? ?