Skip to content

Commit 52ca0c9

Browse files
committed
Add support for getting password from .env (dangerous!)
1 parent 6be4c8d commit 52ca0c9

1 file changed

Lines changed: 12 additions & 2 deletions

File tree

shinobu/__main__.py

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
import getpass
2626
import discord
2727
from discord.ext import commands
28+
from dotenv import load_dotenv
2829
from shinobu.runtime import runtime
2930
from shinobu.runtime.secrets import manager, fine_grained, encryptor
3031
from shinobu.runtime.models import shinobu_cog
@@ -482,8 +483,15 @@ def start_secrets_cli():
482483
# Start Shinobu Runtime
483484
if __name__ == "__main__":
484485
try:
485-
# Prompt for password
486-
password = getpass.getpass("Encryption password: ")
486+
load_dotenv()
487+
488+
# Check if password is in env file (dangerous!)
489+
if os.environ.get("SHINOBU_ENCRYPTION_PASSWORD"):
490+
print("WARNING: Inheriting password from .env file. Do not store your password here for production environments.")
491+
password = os.environ.get("SHINOBU_ENCRYPTION_PASSWORD")
492+
else:
493+
# Prompt for password (safer!)
494+
password = getpass.getpass("Encryption password: ")
487495

488496
if launch_secrets_cli:
489497
start_secrets_cli()
@@ -492,3 +500,5 @@ def start_secrets_cli():
492500
except KeyboardInterrupt:
493501
print("Exiting...")
494502
sys.exit(0)
503+
else:
504+
print("Exiting...")

0 commit comments

Comments
 (0)