diff --git a/activate_virtual_env.bat b/activate_virtual_env.bat new file mode 100644 index 00000000..2fe3054d --- /dev/null +++ b/activate_virtual_env.bat @@ -0,0 +1,3 @@ +call "%~dp0.venv\Scripts\activate.bat" +set PYTHON3="%~dp0.venv\Scripts\python.exe" +set PYTHON3W="%~dp0.venv\Scripts\pythonw.exe" diff --git a/create_virtual_env.bat b/create_virtual_env.bat new file mode 100644 index 00000000..ca0940fd --- /dev/null +++ b/create_virtual_env.bat @@ -0,0 +1,9 @@ +if "%ICP_CONFIG_ENV_RUN%" == "" ( + call C:\Instrument\Apps\EPICS\config_env.bat +) else ( + @echo Using existing EPICS_ROOT %EPICS_ROOT% +) +del /q /s .venv >NUL 2>&1 +%PYTHON3% -m venv .venv +call "%~dp0.venv\Scripts\activate.bat" +"%~dp0.venv\Scripts\pip.exe" install -r requirements.txt diff --git a/start_archiver_access_cmd.bat b/start_archiver_access_cmd.bat index ab4a4354..28532d00 100644 --- a/start_archiver_access_cmd.bat +++ b/start_archiver_access_cmd.bat @@ -8,6 +8,8 @@ call %MYDIRBLOCK%..\..\..\config_env_base.bat set EPICS_CAS_INTF_ADDR_LIST=127.0.0.1 set EPICS_CAS_BEACON_ADDR_LIST=127.255.255.255 +call %MYDIRBLOCK%activate_virtual_env.bat + set PYTHONUNBUFFERED=TRUE %PYTHON3W% %MYDIRBLOCK%ArchiverAccess\archiver_access.py diff --git a/start_blockserver_cmd.bat b/start_blockserver_cmd.bat index e5f0357b..193ce0a7 100644 --- a/start_blockserver_cmd.bat +++ b/start_blockserver_cmd.bat @@ -9,6 +9,8 @@ set EPICS_CAS_INTF_ADDR_LIST=127.0.0.1 set EPICS_CAS_BEACON_ADDR_LIST=127.255.255.255 set EPICS_CA_MAX_ARRAY_BYTES=1000000 +call %MYDIRBLOCK%activate_virtual_env.bat + set PYTHONUNBUFFERED=TRUE set MYDIRGATE=%MYDIRBLOCK%..\..\..\gateway diff --git a/start_bs_to_kafka_cmd.bat b/start_bs_to_kafka_cmd.bat index 19d9629f..6864a8ab 100644 --- a/start_bs_to_kafka_cmd.bat +++ b/start_bs_to_kafka_cmd.bat @@ -8,6 +8,8 @@ call %MYDIRCD%..\..\..\config_env_base.bat set EPICS_CAS_INTF_ADDR_LIST=127.0.0.1 set EPICS_CAS_BEACON_ADDR_LIST=127.255.255.255 +call %MYDIRBLOCK%activate_virtual_env.bat + set PYTHONUNBUFFERED=TRUE @echo %DATE% %TIME% starting BS to Kafka %PYTHON3W% %MYDIRCD%\BlockServerToKafka\main.py -d %INSTRUMENT%_sampleEnv -c forwarder_config -b livedata.isis.cclrc.ac.uk:9092 -p %MYPVPREFIX% diff --git a/start_database_server_cmd.bat b/start_database_server_cmd.bat index 9bb4cabd..21cfe84f 100644 --- a/start_database_server_cmd.bat +++ b/start_database_server_cmd.bat @@ -7,6 +7,9 @@ call %MYDIRBLOCK%..\..\..\config_env_base.bat set EPICS_CAS_INTF_ADDR_LIST=127.0.0.1 set EPICS_CAS_BEACON_ADDR_LIST=127.255.255.255 set EPICS_CA_MAX_ARRAY_BYTES=10000000 + +call %MYDIRBLOCK%activate_virtual_env.bat + set PYTHONUNBUFFERED=TRUE if exist "%PYTHON3W%" ( %PYTHON3W% %MYDIRBLOCK%DatabaseServer\database_server.py -od %MYDIRBLOCK%..\..\..\iocstartup diff --git a/start_remote_ioc_server.bat b/start_remote_ioc_server.bat index b1345273..f84559fb 100644 --- a/start_remote_ioc_server.bat +++ b/start_remote_ioc_server.bat @@ -11,6 +11,8 @@ set EPICS_CAS_INTF_ADDR_LIST=127.0.0.1 set EPICS_CAS_BEACON_ADDR_LIST=127.255.255.255 set EPICS_CA_MAX_ARRAY_BYTES=65536 +call %MYDIRBLOCK%activate_virtual_env.bat + set PYTHONUNBUFFERED=TRUE C:\instrument\apps\python3\python.exe %MYDIRBLOCK%RemoteIocServer\remote_ioc_server.py --pv_prefix %MYPVPREFIX%