Я пытаюсь развернуть свой мезонинный сайт и следую этому руководству, используя СЛУЧАЙ 1 (на новый сервер)
- 1-3, все кажется прекрасным (очевидно, нет), пока я не дойду до шага 4
- 4- Запускаем fab all
Процесс устанавливает virtualenvs и в нем каталог с именем моего проекта, а затем я получаю эту ошибку:
[1xx.xx.xxx.xx] out: новый исполняемый файл python в /home/~/.virtualenvs/blog_iq/bin/python [1xx.xx.xxx.xx] out: установка setuptools, pip, wheel ... готово. [1xx.xx.xxx.xx]] out: [1xx.xx.xxx.xx]] rsync_project: rsync --exclude ".pyc" --exclude " .pyo" --exclude " * .db "--exclude" .DS_Store "--exclude" .coverage "--exclude" local_settings.py "--exclude" / static "--exclude" /.git "--exclude" /.hg "- pthrvz --rsh = 'ssh -p 22' C: \ Users \ ~ \ Root \ 2blog \ blog_iq \
[email protected]: / home / user / mezzanine / blog_iq[localhost] local: rsync --exclude ".pyc" --exclude " .pyo" --exclude "* .db" --exclude ".DS_Store" --exclude ".coverage" - -exclude "local_settings.py" --exclude "/ static" --exclude "/.git" --exclude "/.hg" -pthrvz --rsh = 'ssh -p 22' C: \ Users \ ~ \ Root \ 2blog \ blog_iq \
[email protected]: / home / user / mezzanine / blog_iqИсточник и место назначения не могут быть одновременно удаленными. Ошибка rsync: синтаксическая ошибка или ошибка использования (код 1) в main.c (1292) [Receiver = 3.1.2]
Неустранимая ошибка: local () обнаружил ошибку (код возврата 1) при выполнении 'rsync --exclude ".pyc" --exclude " .pyo" --exclude "* .db" --exclude ".DS_Store" --exclude ".coverage" --exclude "local_settings.py" --exclude "/ static" --exclude "/.git" --exclude "/.hg" -pthrvz --rsh = 'ssh -p 22 'C: \ Users \ ~ \ Root \ 2blog \ blog_iq \
[email protected]: / home / user / mezzanine / blog_iqПрерывание. Отключение от 1xx.xxx.xx ... готово.
Я с удовольствием опубликую весь файл fabfile.py, который был сгенерирован мезонином при установке, но он длинный, и я никогда не касался его, за исключением поиска кода, который генерирует эту распечатку, и, похоже, он здесь:
################
# Config setup #
################
if not hasattr(env, "proj_app"):
env.proj_app = real_project_name("blog_iq")
conf = {}
if sys.argv[0].split(os.sep)[-1] in ("fab", "fab-script.py"):
# Ensure we import settings from the current dir
try:
conf = import_module("%s.settings" % env.proj_app).FABRIC
try:
conf["HOSTS"][0]
except (KeyError, ValueError):
raise ImportError
except (ImportError, AttributeError):
print("Aborting, no hosts defined.")
exit()
env.db_pass = conf.get("DB_PASS", None)
env.admin_pass = conf.get("ADMIN_PASS", None)
env.user = conf.get("SSH_USER", getuser())
env.password = conf.get("SSH_PASS", None)
env.key_filename = conf.get("SSH_KEY_PATH", None)
env.hosts = conf.get("HOSTS", [""])
env.proj_name = conf.get("PROJECT_NAME", env.proj_app)
env.venv_home = conf.get("VIRTUALENV_HOME", "/home/%s/.virtualenvs" % env.user)
env.venv_path = join(env.venv_home, env.proj_name)
env.proj_path = "/home/%s/mezzanine/%s" % (env.user, env.proj_name)
env.manage = "%s/bin/python %s/manage.py" % (env.venv_path, env.proj_path)
env.domains = conf.get("DOMAINS", [conf.get("LIVE_HOSTNAME", env.hosts[0])])
env.domains_nginx = " ".join(env.domains)
env.domains_regex = "|".join(env.domains)
env.domains_python = ", ".join(["'%s'" % s for s in env.domains])
env.ssl_disabled = "#" if len(env.domains) > 1 else ""
env.vcs_tools = ["git", "hg"]
env.deploy_tool = conf.get("DEPLOY_TOOL", "rsync")
env.reqs_path = conf.get("REQUIREMENTS_PATH", None)
env.locale = conf.get("LOCALE", "en_US.UTF-8")
env.num_workers = conf.get("NUM_WORKERS",
"multiprocessing.cpu_count() * 2 + 1")
env.secret_key = conf.get("SECRET_KEY", "")
env.nevercache_key = conf.get("NEVERCACHE_KEY", "")
if not env.secret_key:
print("Aborting, no SECRET_KEY setting defined.")
exit()
# Remote git repos need to be "bare" and reside separated from the project
if env.deploy_tool == "git":
env.repo_path = "/home/%s/git/%s.git" % (env.user, env.proj_name)
else:
env.repo_path = env.proj_path
и тут
def rsync_upload():
"""
Uploads the project with rsync excluding some files and folders.
"""
excludes = ["*.pyc", "*.pyo", "*.db", ".DS_Store", ".coverage",
"local_settings.py", "/static", "/.git", "/.hg"]
local_dir = os.getcwd() + os.sep
return rsync_project(remote_dir=env.proj_path, local_dir=local_dir,
exclude=excludes)