priaansh commited on
Commit
c363123
·
verified ·
1 Parent(s): c9f1979

Create app.py

Browse files
Files changed (1) hide show
  1. app.py +39 -0
app.py ADDED
@@ -0,0 +1,39 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import os
2
+ import boto3
3
+ from flask import Flask, jsonify
4
+
5
+ # Load environment variables (from mounted secrets)
6
+ API_KEY = os.getenv("API_KEY")
7
+ S3_ENDPOINT_URL = os.getenv("S3_ENDPOINT_URL")
8
+ S3_ACCESS_KEY = os.getenv("S3_ACCESS_KEY")
9
+ S3_SECRET_KEY = os.getenv("S3_SECRET_KEY")
10
+ S3_BUCKET_NAME = os.getenv("S3_BUCKET_NAME")
11
+ S3_REGION = os.getenv("S3_REGION")
12
+
13
+ app = Flask(__name__)
14
+
15
+ # Setup S3 client
16
+ s3 = boto3.client(
17
+ "s3",
18
+ endpoint_url=S3_ENDPOINT_URL,
19
+ aws_access_key_id=S3_ACCESS_KEY,
20
+ aws_secret_access_key=S3_SECRET_KEY,
21
+ region_name=S3_REGION,
22
+ )
23
+
24
+ @app.route("/")
25
+ def home():
26
+ return jsonify({"message": "Welcome to No-Code Architect's Toolkit", "api_key": API_KEY})
27
+
28
+ @app.route("/list-files")
29
+ def list_files():
30
+ try:
31
+ response = s3.list_objects_v2(Bucket=S3_BUCKET_NAME)
32
+ contents = response.get("Contents", [])
33
+ filenames = [obj["Key"] for obj in contents]
34
+ return jsonify({"files": filenames})
35
+ except Exception as e:
36
+ return jsonify({"error": str(e)}), 500
37
+
38
+ if __name__ == "__main__":
39
+ app.run(host="0.0.0.0", port=8080)