# on a *nix, from a loooong b64:
echo "long-base64-text..." | fly secrets set SECRET_BIG_B64=-
# and, from a file
fly secrets set SECRET_MASSIVE_TXT =- < file.txt
so from a file using< does not work for me. I did not base64 it
PS C:\Users\Radek> flyctl secrets -a zzrec set GOOGLE_OAUTH2_CLIENT_SECRETS_JSON=- < C:\downloads\client_secret_7496673475hj7vku1.apps.googleusercontent.com.txt
At line:1 char:65
… tl secrets -a zzrec set GOOGLE_OAUTH2_CLIENT_SECRETS_JSON=- < C:\down …
~
The ‘<’ operator is reserved for future use.
+ CategoryInfo : ParserError: ( , ParentContainsErrorRecordException
+ FullyQualifiedErrorId : RedirectionNotSupported
I solved this issue on Windows by setting each key in the JSON file as a separate environment variable.
Which went well with well. But I was facing an issue with a key in my JSON file because it has a humongous value that spanned many lines in the terminal.
To fix that this Windows Powershell Command that did the job for me:
flyctl secrets set private_key="$((Get-Content secrets.json | ConvertFrom-Json).private_key)" --json
Here is the bash equivalent of this(Not verified):
flyctl secrets set private_key="$(jq -r '.private_key' secrets.json)" --json
These commands basically extract the key private_key from the secrets.json file in my root directory.
The resulting value is passed as a parameter to the flyctl secrets set command.