In this post, we will see that, how we can dynamically generate/create a JSON file using shell script.
Some days back, i was having a scenario where i need to generate a JSON file in a docker container using environment variable. And environment variable values are passed through the environment file into the docker container.
Will start with writing a shell/bash script. Lets name it, generate.sh
#!/bin/ash
cat > /home/app/secrets/account.json << EOF
{
"type": $type,
"project_id": $project_id,
"private_key":$private_key,
"client_email":$client_email,
"client_id":$client_id,
"auth_uri":$auth_uri,
"token_uri":$token_uri
}
EOF
And we can now save this file. Where $type,$project_id,$private_key are the environment variables.
Now, we can run this shell script by executing the following command in the bash.
sh generate.sh
And this will generate a JSON file in the /home/app/secrets/ folder.
In the shebang, i have used #!/bin/ash as, i was using the alpine docker image.
Some days back, i was having a scenario where i need to generate a JSON file in a docker container using environment variable. And environment variable values are passed through the environment file into the docker container.
Will start with writing a shell/bash script. Lets name it, generate.sh
#!/bin/ash
cat > /home/app/secrets/account.json << EOF
{
"type": $type,
"project_id": $project_id,
"private_key":$private_key,
"client_email":$client_email,
"client_id":$client_id,
"auth_uri":$auth_uri,
"token_uri":$token_uri
}
EOF
And we can now save this file. Where $type,$project_id,$private_key are the environment variables.
Now, we can run this shell script by executing the following command in the bash.
sh generate.sh
And this will generate a JSON file in the /home/app/secrets/ folder.
In the shebang, i have used #!/bin/ash as, i was using the alpine docker image.