Я использую subprocess.Popen () для вызова вызова подпроцесса, который должен выполняться независимо, без того, чтобы родительский процесс ожидал выполнения дочернего процесса.
Я пытаюсь отправить некоторую структуру данных в виде строки в дочерний процесс, который прекрасно работает на моем локальном компьютере с Windows, но когда я запускаю тот же код в экземпляре AWS ec2 (Linux), он не выполняется. Несмотря на то, что когда я запускаю пример кода для подпроцесса в том же Linux, он отлично работает.
```parent process```
in_data = {'InstancesInfo': parameters['instances_info'],
'external_id': parameters['user_details['external_id'],
'role_arn': parameters['user_details']['role_arn'],
'org_id': parameters['user_details']['org_id']
}
args = json.dumps(in_data)
self.logger.info(CURRENT_OS)
if CURRENT_OS == 'Linux':
self.logger.info("Inside IF")
subprocess.Popen(['python', 'RightSizeTypeConverter.py',args], shell=True)
self.logger.info("Done")
else:
subprocess.Popen(['python', 'C:\develop\CloudM\AWS\General\RightSizeTypeConverter.py', args], shell=True)
print("Done")
```child process file```
```some code````
if __name__ == "__main__":
logger.info("Inside Main")
instance_list = json.loads(sys.argv[1])
update_right_size_ec2_instances(instance_list)
logger.info("Inside Main")
Я не получаю сообщение об ошибке. Как будто все работает нормально