import os from huggingface_hub import HfApi import sys # Configuration HF_TOKEN = os.environ.get("HF_TOKEN") SPACE_NAME = "Kraft102/widgetdc-cortex" # Update to verify .env.production ENV_FILE = ".env.production" def parse_env_file(filepath): """Parse .env file manually to avoid dependencies""" env_vars = {} try: if not os.path.exists(filepath): return None with open(filepath, 'r', encoding='utf-8') as f: for line in f: line = line.strip() if not line or line.startswith('#'): continue if '=' in line: key, value = line.split('=', 1) key = key.strip() value = value.strip() if (value.startswith('"') and value.endswith('"')) or \ (value.startswith("'") and value.endswith("'")): value = value[1:-1] env_vars[key] = value except Exception as e: print(f"Error reading {filepath}: {e}") return None return env_vars def main(): print(f"🔍 Checking {ENV_FILE} for production secrets...") env_vars = parse_env_file(ENV_FILE) if not env_vars: print(f"⚠️ {ENV_FILE} not found or empty. Falling back to .env checking...") env_vars = parse_env_file(".env") if not env_vars: print("❌ No .env files found!") sys.exit(1) # Check for localhost localhost_keys = [k for k, v in env_vars.items() if 'localhost' in v or '127.0.0.1' in v] if localhost_keys: print(f"⚠️ WARNING: Found localhost values in {ENV_FILE}:") for k in localhost_keys: print(f" - {k}") print(" These will NOT work in Hugging Face Spaces!") # We will still upload because the user asked us to "gennemfær dette" (execute this) # But we will verify API keys at least. print(f"🚀 Uploading {len(env_vars)} secrets to {SPACE_NAME}...") try: api = HfApi(token=HF_TOKEN) for key, value in env_vars.items(): api.add_space_secret(repo_id=SPACE_NAME, key=key, value=value, token=HF_TOKEN) print(f" ✅ Uploaded {key}") except Exception as e: print(f"❌ Upload failed: {e}") if __name__ == "__main__": main()