再現する手順:
- Linux 環境では、デスクトップに「fab」というフォルダーを作成します。
- 参考までに、私はzshを使用しています
- CDに
~/Desktop/fab
fabfile.py
次を発行して、./fab ディレクトリで作成したこれを実行しfab init
ます。#!/usr/bin/env python #set up ssh to remote server import sys, os, fileinput from fabric.api import * def init(): local('mkdir ./virtualenv') local('cd ./virtualenv && virtualenv --no-site-packages venv') local('chown -R user:user ./virtualenv/') local('chmod 770 -R ./virtualenv/') venv = 'source ./virtualenv/venv/bin/activate && ' local(venv+'pip install mysql-python django South')
このエラーを取得します。
➜ fab fab init [localhost] local: mkdir ./virtualenv [localhost] local: cd ./virtualenv && virtualenv --no-site-packages venv New python executable in venv/bin/python Installing distribute...........................................................................................................................................................................................................................done. Installing pip................done. [localhost] local: chown -R user:user ./virtualenv/ [lcalhost] local: chmod 770 -R ./virtualenv/ [localhost] local: source ./virtualenv/venv/bin/activate && pip install mysql-python django South /bin/sh: 1: source: not found Fatal error: local() encountered an error (return code 127) while executing 'source ./virtualenv/venv/bin/activate && pip install mysql-python django South' Aborting.
source ./virtualenv/venv/bin/activate && pip install mysql-python django South
zsh から実行し、動作することを確認します。
コードでa を使用しても同じエラーが発生するため、これはthisのような質問の重複ではありません。with prefix(
何か案は?