File size: 2,219 Bytes
86ceb31
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
@echo off
SETLOCAL ENABLEDELAYEDEXPANSION

REM Get the directory of the currently running script
SET "SCRIPT_DIR=%~dp0"
@REM REM Set the path to the .env file relative to the script's location
@REM SET "ENV_FILE=!SCRIPT_DIR!src\main.py"
@REM REM Set the path to the temporary file
@REM SET "TEMP_FILE=!SCRIPT_DIR!src\temp.py"

REM Set the path to the main.py file relative to the script's location
SET "MAIN_PY_FILE=!SCRIPT_DIR!src\main.py"

REM Create a temporary file to store the environment variables
SET "TEMP_FILE=!SCRIPT_DIR!src\temp.py"

REM Check if the main.py file exists
IF NOT EXIST "!MAIN_PY_FILE!" (
    echo main.py file not found at "!MAIN_PY_FILE!"
    pause
    exit /b 1
)

REM Check if the environment variables are already present in the main.py file
FINDSTR /C:"TEL_FLAG" "!MAIN_PY_FILE!" > NUL
IF %ERRORLEVEL% == 0 (
    echo Environment variables already present in main.py file.
    exit /b 0
)

REM Create a new temporary file and add new lines to it if not already added
(
    echo import os >> "!TEMP_FILE!"
    echo os.environ['LOGCHECK'] = "false" >> "!TEMP_FILE!"
    @REM Write all of the ENV variables values like above and ONLY THEN EXECUTE THE SCRIPT!!

)

REM Append the original .env file's content to the temporary file
type "!MAIN_PY_FILE!" >> "!TEMP_FILE!"

REM Replace the original .env file with the temporary file
move /Y "!TEMP_FILE!" "!MAIN_PY_FILE!"

REM Change to the src directory
CD /D "!SCRIPT_DIR!src"

REM Ask the user for the site-packages path
SET /P SITE_PACKAGES_PATH="Enter your virtual environment site-packages path (e.g., yourvirtualenvname/Lib/site-packages): "

REM Prepare the command to generate the exe
SET "FINAL_COMMAND=pyinstaller --onefile --add-data ".env;." --add-data "logger.ini;." --add-data "data;data" --add-data "!SITE_PACKAGES_PATH!;." main.py"

REM Print the final command
echo Final command to execute:
echo !FINAL_COMMAND!

REM Execute the command
CALL !FINAL_COMMAND!

REM Check if the command was successful
IF ERRORLEVEL 1 (
    echo Error: Exe creation failed.
) ELSE (
    echo Exe creation successful.
    REM Copy the .env file to the dist directory
    
)

REM Prevent the command prompt from closing automatically
pause
ENDLOCAL