commons icon indicating copy to clipboard operation
commons copied to clipboard

pants depends on HOME env variable

Open neutrinus opened this issue 11 years ago • 0 comments

I've created a pex file with pants (0.0.13). When I try to run it via supervisord(3.0b2-1), there is a problem with _pex_info.install_cache:

twitter.common.python.pex: Establishing local cache
twitter.common.python.pex: Establishing local cache: 0.1ms
twitter.common.python.pex: Calling environment super
twitter.common.python.pex: Calling environment super: 0.0ms
twitter.common.python.pex: Using prescribed entry point: whmonit.collector.collector
twitter.common.python.pex: Found site-library: /usr/lib/python2.7/dist-packages
twitter.common.python.pex: Inspecting path element: /usr/lib/python2.7/dist-packages
twitter.common.python.pex: Scrubbing from site-packages: /usr/lib/python2.7/dist-packages
twitter.common.python.pex: Resolving python-dateutil==2.1
twitter.common.python.pex: Resolving python-dateutil==2.1 :: Activating cache /home/whcollector/collector.pex/.deps
twitter.common.python.pex: Resolving python-dateutil==2.1 :: Activating cache /home/whcollector/collector.pex/.deps :: Adding mockredispy 2.7.5.1:/home/whcollector/collector.pex/.deps/mockredispy-2.7.5.1-py2.7.egg
twitter.common.python.pex: Resolving python-dateutil==2.1 :: Activating cache /home/whcollector/collector.pex/.deps :: Adding psutil 1.1.0:/home/whcollector/collector.pex/.deps/psutil-1.1.0-py2.7-linux-x86_64.egg
twitter.common.python.pex: Resolving python-dateutil==2.1 :: Activating cache /home/whcollector/collector.pex/.deps :: Adding dulwich 0.9.4:/home/whcollector/collector.pex/.deps/dulwich-0.9.4-py2.7-linux-x86_64.egg
twitter.common.python.pex: Resolving python-dateutil==2.1 :: Activating cache /home/whcollector/collector.pex/.deps :: Adding anyjson 0.3.3:/home/whcollector/collector.pex/.deps/anyjson-0.3.3-py2.7.egg
twitter.common.python.pex: Resolving python-dateutil==2.1 :: Activating cache /home/whcollector/collector.pex/.deps :: Adding pylru 1.0.6:/home/whcollector/collector.pex/.deps/pylru-1.0.6-py2.7.egg
twitter.common.python.pex: Resolving python-dateutil==2.1 :: Activating cache /home/whcollector/collector.pex/.deps :: Adding psycopg2 2.5.1:/home/whcollector/collector.pex/.deps/psycopg2-2.5.1-py2.7-linux-x86_64.egg
twitter.common.python.pex: Resolving python-dateutil==2.1 :: Activating cache /home/whcollector/collector.pex/.deps :: Adding tornado 3.1:/home/whcollector/collector.pex/.deps/tornado-3.1-py2.7.egg
twitter.common.python.pex: Resolving python-dateutil==2.1 :: Activating cache /home/whcollector/collector.pex/.deps :: Adding itsdangerous 0.22:/home/whcollector/collector.pex/.deps/itsdangerous-0.22-py2.7.egg
twitter.common.python.pex: Resolving python-dateutil==2.1 :: Activating cache /home/whcollector/collector.pex/.deps :: Adding SQLAlchemy 0.8.1:/home/whcollector/collector.pex/.deps/SQLAlchemy-0.8.1-py2.7-linux-x86_64.egg
twitter.common.python.pex: Resolving python-dateutil==2.1 :: Activating cache /home/whcollector/collector.pex/.deps :: Adding procname 0.3:/home/whcollector/collector.pex/.deps/procname-0.3-py2.7-linux-x86_64.egg
twitter.common.python.pex: Resolving python-dateutil==2.1 :: Activating cache /home/whcollector/collector.pex/.deps :: Adding orderedmultidict 0.7.1:/home/whcollector/collector.pex/.deps/orderedmultidict-0.7.1-py2.7.egg
twitter.common.python.pex: Resolving python-dateutil==2.1 :: Activating cache /home/whcollector/collector.pex/.deps :: Adding dicts 0.3.1:/home/whcollector/collector.pex/.deps/dicts-0.3.1-py2.7.egg
twitter.common.python.pex: Resolving python-dateutil==2.1 :: Activating cache /home/whcollector/collector.pex/.deps :: Adding python-graph-core 1.8.2:/home/whcollector/collector.pex/.deps/python_graph_core-1.8.2-py2.7.egg
twitter.common.python.pex: Resolving python-dateutil==2.1 :: Activating cache /home/whcollector/collector.pex/.deps :: Adding requests 1.2.3:/home/whcollector/collector.pex/.deps/requests-1.2.3-py2.7.egg
twitter.common.python.pex: Resolving python-dateutil==2.1 :: Activating cache /home/whcollector/collector.pex/.deps :: Adding six 1.5.2:/home/whcollector/collector.pex/.deps/six-1.5.2-py2.7.egg
twitter.common.python.pex: Resolving python-dateutil==2.1 :: Activating cache /home/whcollector/collector.pex/.deps :: Adding python-dateutil 2.1:/home/whcollector/collector.pex/.deps/python_dateutil-2.1-py2.7.egg
twitter.common.python.pex: Resolving python-dateutil==2.1 :: Activating cache /home/whcollector/collector.pex/.deps :: Adding redismock 1.0.5:/home/whcollector/collector.pex/.deps/redismock-1.0.5-py2.7.egg
twitter.common.python.pex: Resolving python-dateutil==2.1 :: Activating cache /home/whcollector/collector.pex/.deps :: Adding furl 0.3.4:/home/whcollector/collector.pex/.deps/furl-0.3.4-py2.7.egg
twitter.common.python.pex: Resolving python-dateutil==2.1 :: Activating cache /home/whcollector/collector.pex/.deps :: Adding blist 1.3.4:/home/whcollector/collector.pex/.deps/blist-1.3.4-py2.7-linux-x86_64.egg
twitter.common.python.pex: Resolving python-dateutil==2.1 :: Activating cache /home/whcollector/collector.pex/.deps :: Adding nanotime 0.5.2:/home/whcollector/collector.pex/.deps/nanotime-0.5.2-py2.7.egg
twitter.common.python.pex: Resolving python-dateutil==2.1 :: Activating cache /home/whcollector/collector.pex/.deps :: Adding setuptools 2.1:/home/whcollector/collector.pex/.deps/setuptools-2.1-py2.7.egg
twitter.common.python.pex: Resolving python-dateutil==2.1 :: Activating cache /home/whcollector/collector.pex/.deps :: Adding kombu 2.5.16:/home/whcollector/collector.pex/.deps/kombu-2.5.16-py2.7.egg
twitter.common.python.pex: Resolving python-dateutil==2.1 :: Activating cache /home/whcollector/collector.pex/.deps :: Adding PyYAML 3.10:/home/whcollector/collector.pex/.deps/PyYAML-3.10-py2.7.egg
twitter.common.python.pex: Resolving python-dateutil==2.1 :: Activating cache /home/whcollector/collector.pex/.deps :: Adding billiard 2.7.3.34:/home/whcollector/collector.pex/.deps/billiard-2.7.3.34-py2.7-linux-x86_64.egg
twitter.common.python.pex: Resolving python-dateutil==2.1 :: Activating cache /home/whcollector/collector.pex/.deps :: Adding RPi.GPIO 0.5.3a:/home/whcollector/collector.pex/.deps/RPi.GPIO-0.5.3a-py2.7-linux-x86_64.egg
twitter.common.python.pex: Resolving python-dateutil==2.1 :: Activating cache /home/whcollector/collector.pex/.deps :: Adding redis 2.8.0:/home/whcollector/collector.pex/.deps/redis-2.8.0-py2.7.egg
twitter.common.python.pex: Resolving python-dateutil==2.1 :: Activating cache /home/whcollector/collector.pex/.deps :: Adding amqp 1.0.13:/home/whcollector/collector.pex/.deps/amqp-1.0.13-py2.7.egg
twitter.common.python.pex: Resolving python-dateutil==2.1 :: Activating cache /home/whcollector/collector.pex/.deps :: Adding voluptuous 0.8.0:/home/whcollector/collector.pex/.deps/voluptuous-0.8.0-py2.7.egg
twitter.common.python.pex: Resolving python-dateutil==2.1 :: Activating cache /home/whcollector/collector.pex/.deps :: Adding pytz 2013b:/home/whcollector/collector.pex/.deps/pytz-2013b-py2.7.egg
twitter.common.python.pex: Resolving python-dateutil==2.1 :: Activating cache /home/whcollector/collector.pex/.deps :: Adding celery 3.0.19:/home/whcollector/collector.pex/.deps/celery-3.0.19-py2.7.egg
twitter.common.python.pex: Resolving python-dateutil==2.1 :: Activating cache /home/whcollector/collector.pex/.deps :: Adding pyOpenSSL 0.13.1:/home/whcollector/collector.pex/.deps/pyOpenSSL-0.13.1-py2.7-linux-x86_64.egg
twitter.common.python.pex: Resolving python-dateutil==2.1 :: Activating cache /home/whcollector/collector.pex/.deps :: Adding sh 1.09:/home/whcollector/collector.pex/.deps/sh-1.09-py2.7.egg
twitter.common.python.pex: Resolving python-dateutil==2.1: 142.4ms
twitter.common.python.pex:   Activating cache /home/whcollector/collector.pex/.deps: 141.8ms
twitter.common.python.pex:     Adding mockredispy 2.7.5.1:/home/whcollector/collector.pex/.deps/mockredispy-2.7.5.1-py2.7.egg: 0.1ms
twitter.common.python.pex:     Adding psutil 1.1.0:/home/whcollector/collector.pex/.deps/psutil-1.1.0-py2.7-linux-x86_64.egg: 0.1ms
twitter.common.python.pex:     Adding dulwich 0.9.4:/home/whcollector/collector.pex/.deps/dulwich-0.9.4-py2.7-linux-x86_64.egg: 0.1ms
twitter.common.python.pex:     Adding anyjson 0.3.3:/home/whcollector/collector.pex/.deps/anyjson-0.3.3-py2.7.egg: 0.1ms
twitter.common.python.pex:     Adding pylru 1.0.6:/home/whcollector/collector.pex/.deps/pylru-1.0.6-py2.7.egg: 0.1ms
twitter.common.python.pex:     Adding psycopg2 2.5.1:/home/whcollector/collector.pex/.deps/psycopg2-2.5.1-py2.7-linux-x86_64.egg: 0.1ms
twitter.common.python.pex:     Adding tornado 3.1:/home/whcollector/collector.pex/.deps/tornado-3.1-py2.7.egg: 0.1ms
twitter.common.python.pex:     Adding itsdangerous 0.22:/home/whcollector/collector.pex/.deps/itsdangerous-0.22-py2.7.egg: 0.1ms
twitter.common.python.pex:     Adding SQLAlchemy 0.8.1:/home/whcollector/collector.pex/.deps/SQLAlchemy-0.8.1-py2.7-linux-x86_64.egg: 0.2ms
twitter.common.python.pex:     Adding procname 0.3:/home/whcollector/collector.pex/.deps/procname-0.3-py2.7-linux-x86_64.egg: 0.1ms
twitter.common.python.pex:     Adding orderedmultidict 0.7.1:/home/whcollector/collector.pex/.deps/orderedmultidict-0.7.1-py2.7.egg: 0.1ms
twitter.common.python.pex:     Adding dicts 0.3.1:/home/whcollector/collector.pex/.deps/dicts-0.3.1-py2.7.egg: 0.1ms
twitter.common.python.pex:     Adding python-graph-core 1.8.2:/home/whcollector/collector.pex/.deps/python_graph_core-1.8.2-py2.7.egg: 0.1ms
twitter.common.python.pex:     Adding requests 1.2.3:/home/whcollector/collector.pex/.deps/requests-1.2.3-py2.7.egg: 0.1ms
twitter.common.python.pex:     Adding six 1.5.2:/home/whcollector/collector.pex/.deps/six-1.5.2-py2.7.egg: 0.1ms
twitter.common.python.pex:     Adding python-dateutil 2.1:/home/whcollector/collector.pex/.deps/python_dateutil-2.1-py2.7.egg: 0.1ms
twitter.common.python.pex:     Adding redismock 1.0.5:/home/whcollector/collector.pex/.deps/redismock-1.0.5-py2.7.egg: 0.1ms
twitter.common.python.pex:     Adding furl 0.3.4:/home/whcollector/collector.pex/.deps/furl-0.3.4-py2.7.egg: 0.1ms
twitter.common.python.pex:     Adding blist 1.3.4:/home/whcollector/collector.pex/.deps/blist-1.3.4-py2.7-linux-x86_64.egg: 0.1ms
twitter.common.python.pex:     Adding nanotime 0.5.2:/home/whcollector/collector.pex/.deps/nanotime-0.5.2-py2.7.egg: 0.1ms
twitter.common.python.pex:     Adding setuptools 2.1:/home/whcollector/collector.pex/.deps/setuptools-2.1-py2.7.egg: 0.1ms
twitter.common.python.pex:     Adding kombu 2.5.16:/home/whcollector/collector.pex/.deps/kombu-2.5.16-py2.7.egg: 0.1ms
twitter.common.python.pex:     Adding PyYAML 3.10:/home/whcollector/collector.pex/.deps/PyYAML-3.10-py2.7.egg: 0.1ms
twitter.common.python.pex:     Adding billiard 2.7.3.34:/home/whcollector/collector.pex/.deps/billiard-2.7.3.34-py2.7-linux-x86_64.egg: 0.1ms
twitter.common.python.pex:     Adding RPi.GPIO 0.5.3a:/home/whcollector/collector.pex/.deps/RPi.GPIO-0.5.3a-py2.7-linux-x86_64.egg: 0.1ms
twitter.common.python.pex:     Adding redis 2.8.0:/home/whcollector/collector.pex/.deps/redis-2.8.0-py2.7.egg: 0.1ms
twitter.common.python.pex:     Adding amqp 1.0.13:/home/whcollector/collector.pex/.deps/amqp-1.0.13-py2.7.egg: 0.1ms
twitter.common.python.pex:     Adding voluptuous 0.8.0:/home/whcollector/collector.pex/.deps/voluptuous-0.8.0-py2.7.egg: 0.1ms
twitter.common.python.pex:     Adding pytz 2013b:/home/whcollector/collector.pex/.deps/pytz-2013b-py2.7.egg: 0.1ms
twitter.common.python.pex:     Adding celery 3.0.19:/home/whcollector/collector.pex/.deps/celery-3.0.19-py2.7.egg: 0.1ms
twitter.common.python.pex:     Adding pyOpenSSL 0.13.1:/home/whcollector/collector.pex/.deps/pyOpenSSL-0.13.1-py2.7-linux-x86_64.egg: 0.1ms
twitter.common.python.pex:     Adding sh 1.09:/home/whcollector/collector.pex/.deps/sh-1.09-py2.7.egg: 0.1ms
twitter.common.python.pex: Activated python-dateutil 2.1
twitter.common.python.pex: Activated python-dateutil 2.1 :: Locally caching
Traceback (most recent call last):
  File "/usr/lib/python2.7/runpy.py", line 162, in _run_module_as_main
    "__main__", fname, loader, pkg_name)
  File "/usr/lib/python2.7/runpy.py", line 72, in _run_code
    exec code in run_globals
  File "/home/whcollector/collector.pex/__main__.py", line 24, in <module>
  File "/home/whcollector/collector.pex/.bootstrap/_twitter_common_python/pex_bootstrapper.py", line 54, in bootstrap_pex
  File "/home/whcollector/collector.pex/.bootstrap/_twitter_common_python/pex.py", line 145, in execute
  File "/home/whcollector/collector.pex/.bootstrap/_twitter_common_python/pex.py", line 403, in activate
  File "/home/whcollector/collector.pex/.bootstrap/_twitter_common_python/util.py", line 49, in maybe_locally_cache
  File "/home/whcollector/collector.pex/.bootstrap/_twitter_common_python/common.py", line 100, in safe_mkdir
  File "/usr/lib/python2.7/os.py", line 150, in makedirs
    makedirs(head, mode)
  File "/usr/lib/python2.7/os.py", line 157, in makedirs
    mkdir(name, mode)
OSError: [Errno 13] Permission denied: '/root/.pex'

My supervisord config:

[program:wh_collector]
command=/home/whcollector/collector.pex
autorestart=true
startsecs=20
stopasgroup=true
killasgroup=true
user=whcollector
group=whcollector
stdout_logfile=/home/whcollector/logs/stdout
stderr_logfile=/home/whcollector/logs/stderr
directory=/home/whcollector/
environment=PEX_FOCE_LOCAL="1", PANTS_DEV=1, PEX_VERBOSE=10, 

When I add a HOME to environment it works like a charm.

neutrinus avatar Feb 17 '14 10:02 neutrinus