@@ -144,9 +144,13 @@ def __init__(
144144 except docker .errors .DockerException as e :
145145 raise docker .errors .DockerException (f"Failed to connect to Docker daemon: { e } . " )
146146
147- self .image_name = "taskweavercontainers/taskweaver-executor"
147+ self .image_name = "taskweavercontainers/taskweaver-executor:latest "
148148 try :
149- self .docker_client .images .get (self .image_name )
149+ local_image = self .docker_client .images .get (self .image_name )
150+ registry_image = self .docker_client .images .get_registry_data (self .image_name )
151+ if local_image .id != registry_image .id :
152+ logger .info (f"Local image { local_image .id } does not match registry image { registry_image .id } ." )
153+ raise docker .errors .ImageNotFound ("Local image is outdated." )
150154 except docker .errors .ImageNotFound :
151155 logger .info ("Pulling image from docker.io." )
152156 try :
@@ -219,11 +223,6 @@ def start_session(
219223 self ._cmd_session_init (session )
220224 session .kernel_status = "ready"
221225 elif self .mode == EnvMode .Container :
222- if platform .system () != "Windows" :
223- # change the permission of the ces and cwd directories
224- os .chmod (ces_session_dir , 0o755 )
225- os .chmod (cwd , 0o755 )
226-
227226 connection_file = self ._get_connection_file (session_id , new_kernel_id )
228227 new_port_start = self .port_start_inside_container
229228 kernel_env = {
@@ -235,6 +234,12 @@ def start_session(
235234 "TASKWEAVER_PORT_START" : str (new_port_start ),
236235 "TASKWEAVER_LOGGING_FILE_PATH" : "/app/ces/kernel_logging.log" ,
237236 }
237+
238+ if platform .system () != "Windows" :
239+ # change the permission of the ces and cwd directories
240+ kernel_env ["TASKWEAVER_UID" ] = str (os .getuid ())
241+ kernel_env ["TASKWEAVER_GID" ] = str (os .getgid ())
242+
238243 # ports will be assigned automatically at the host
239244 container = self .docker_client .containers .run (
240245 image = self .image_name ,
@@ -251,7 +256,6 @@ def start_session(
251256 f"{ new_port_start + 3 } /tcp" : None ,
252257 f"{ new_port_start + 4 } /tcp" : None ,
253258 },
254- user = "taskweaver" ,
255259 )
256260
257261 tick = 0
0 commit comments