Prj2 / test_env.json.py
iitmbs24f's picture
Upload 37 files
2f95553 verified
"""
Test script that outputs environment variables as JSON.
Run: python test_env.json.py
"""
import os
import json
def get_env_json():
"""Get environment variables status as JSON."""
quiz_secret = os.getenv("QUIZ_SECRET")
openai_key = os.getenv("OPENAI_API_KEY")
port = os.getenv("PORT", "8000")
openrouter_key = os.getenv("OPENROUTER_API_KEY")
result = {
"status": "ok",
"variables": {
"QUIZ_SECRET": {
"set": quiz_secret is not None,
"length": len(quiz_secret) if quiz_secret else 0,
"preview": f"{quiz_secret[:4]}...{quiz_secret[-4:]}" if quiz_secret and len(quiz_secret) > 8 else "***" if quiz_secret else None
},
"OPENAI_API_KEY": {
"set": openai_key is not None,
"length": len(openai_key) if openai_key else 0,
"preview": f"{openai_key[:7]}...{openai_key[-4:]}" if openai_key and len(openai_key) > 11 else "***" if openai_key else None,
"valid_format": openai_key.startswith("sk-") if openai_key else False
},
"OPENROUTER_API_KEY": {
"set": openrouter_key is not None,
"length": len(openrouter_key) if openrouter_key else 0,
"preview": f"{openrouter_key[:7]}...{openrouter_key[-4:]}" if openrouter_key and len(openrouter_key) > 11 else "***" if openrouter_key else None,
"valid_format": openrouter_key.startswith("sk-or-") if openrouter_key else False
},
"PORT": {
"set": True,
"value": port
}
},
"ready": quiz_secret is not None,
"llm_enabled": any([openai_key, openrouter_key]),
"message": "Ready to run" if quiz_secret else "QUIZ_SECRET is required"
}
return result
if __name__ == "__main__":
result = get_env_json()
print(json.dumps(result, indent=2))