Как выполнить синхронизацию с локальными папками из представления Django

У меня есть сайт, на котором администратор, вошедший в систему, должен иметь возможность перемещать промежуточную базу данных в действующую базу данных. Первое, что он делает, это выгружает sql и отправляет в целевую базу данных. Это нормально работает, но когда я перехожу к rsync папок, содержащих загруженный материал, я получаю сообщение об ошибке. Это происходит ТОЛЬКО, когда сценарий вызывается из представления, а не из командной строки или оболочки Python. Вот функция:

def copy_media(self, origin_folder, target_folder):
    command_string = "rsync -a %s %s" % (origin_folder, target_folder)
    return_code = subprocess.call(command_string, shell=True)
    return return_code

Код возврата - «12» при ошибке. Мое лучшее предположение состоит в том, что, поскольку до завершения выполнения скрипта существует значительная задержка, представление не знает, как правильно дождаться его завершения. Другое предположение, которое у меня было, заключалось в том, что пути каким-то образом запутались из-за обзора.

5
задан Sebastian 27 January 2012 в 20:53
поделиться