@@ -29,20 +29,15 @@ def __init__(self):
2929 # Set absolute database path in workspace data directory
3030 self .db_path = self .data_dir / "sui_indexer.db"
3131
32- # Prisma client generation directory
33- self .prisma_client_dir = self .data_dir / "prisma_client"
34- self .prisma_client_dir .mkdir (parents = True , exist_ok = True )
35-
36- # Database URL for this setup session only
37- self .database_url = f'file:{ self .db_path } '
32+ # Set database URL
33+ os .environ ['DATABASE_URL' ] = f'file:{ self .db_path } '
3834
3935 # Log all paths for verification
4036 self .get_logger ().info (f"Package share directory: { pkg_share } " )
4137 self .get_logger ().info (f"Prisma directory: { self .prisma_path } " )
4238 self .get_logger ().info (f"Workspace data directory: { self .data_dir } " )
4339 self .get_logger ().info (f"Database absolute path: { self .db_path } " )
44- self .get_logger ().info (f"Prisma client directory: { self .prisma_client_dir } " )
45- self .get_logger ().info (f"Database URL: { self .database_url } " )
40+ self .get_logger ().info (f"Database URL: { os .environ ['DATABASE_URL' ]} " )
4641
4742 # Run setup
4843 self .setup_prisma ()
@@ -54,49 +49,44 @@ def __init__(self):
5449 def setup_prisma (self ):
5550 """Run Prisma generate and migrate."""
5651 try :
57- # Remove existing database if it exists
52+ # Remove existing database if it exists for fresh start
5853 if self .db_path .exists ():
5954 self .get_logger ().info (f"Removing existing database at: { self .db_path } " )
6055 self .db_path .unlink ()
6156
62- # Create isolated environment for Prisma commands
63- prisma_env = os .environ .copy ()
64- prisma_env ['DATABASE_URL' ] = self .database_url
65-
66- # Generate Prisma client
57+ # Generate Prisma client (will use default location)
6758 self .get_logger ().info ('Generating Prisma client...' )
6859 result = subprocess .run (
6960 ['prisma' , 'generate' ],
7061 cwd = self .prisma_path ,
7162 check = True ,
7263 capture_output = True ,
7364 text = True ,
74- env = prisma_env
65+ env = dict ( os . environ )
7566 )
76- self .get_logger ().info ('Prisma generate output:' )
77- self .get_logger ().info (result .stdout )
67+ self .get_logger ().info ('Prisma generate completed successfully' )
68+ if result .stdout :
69+ self .get_logger ().info (f'Generate output: { result .stdout } ' )
7870 if result .stderr :
79- self .get_logger ().warn (f'Prisma generate stderr: { result .stderr } ' )
71+ self .get_logger ().warn (f'Generate stderr: { result .stderr } ' )
8072
8173 # Push the schema to the database
8274 self .get_logger ().info ('Pushing schema to database...' )
8375 push_cmd = ['prisma' , 'db' , 'push' , '--force-reset' , '--accept-data-loss' ]
84- self .get_logger ().info (f"Running command: { ' ' .join (push_cmd )} " )
85- self .get_logger ().info (f"In directory: { self .prisma_path } " )
86- self .get_logger ().info (f"With DATABASE_URL: { self .database_url } " )
8776
8877 result = subprocess .run (
8978 push_cmd ,
9079 cwd = self .prisma_path ,
9180 check = True ,
9281 capture_output = True ,
9382 text = True ,
94- env = prisma_env
83+ env = dict ( os . environ )
9584 )
96- self .get_logger ().info ('Prisma db push output:' )
97- self .get_logger ().info (result .stdout )
85+ self .get_logger ().info ('Prisma db push completed successfully' )
86+ if result .stdout :
87+ self .get_logger ().info (f'Push output: { result .stdout } ' )
9888 if result .stderr :
99- self .get_logger ().warn (f'Prisma db push stderr: { result .stderr } ' )
89+ self .get_logger ().warn (f'Push stderr: { result .stderr } ' )
10090
10191 # Verify database was created in correct location
10292 if self .db_path .exists ():
@@ -106,16 +96,10 @@ def setup_prisma(self):
10696
10797 # Verify tables by connecting and querying
10898 try :
109- # Add the generated prisma client to Python path
110- sys .path .insert (0 , str (self .prisma_client_dir ))
11199 from prisma import Prisma
112100
113- # Initialize Prisma client with absolute path
114- db = Prisma (
115- datasource = {
116- "url" : str (self .database_url )
117- }
118- )
101+ # Initialize Prisma client
102+ db = Prisma ()
119103
120104 # Connect and verify tables exist
121105 async def verify_tables ():
0 commit comments