basho-labs / riak-mesos-tools

CLI and other tools for interacting with the Riak Mesos Framework.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Riak Mesos 1.3 install – possible missing dependency?

ChiralMedia opened this issue · comments

After installing version 1.3 on DCOS 1.7 / Mesos 0.28.1 I get the following (config file attached)
The config has the latest versions of scheduler, executor and explorer.

config.dcos.json.txt

[u1@bootstrapper riak-mesos]$ dcos package install riak --options /etc/riak-mesos/config.dcos.json
The Riak framework should have at least 1GB of RAM and 0.5 CPUs to perform successfully.
Continue installing? [yes/no] yes
Installing Marathon app for package [riak] version [1.3.0]
Installing CLI subcommand for package [riak] version [1.3.0]
New command available: dcos riak
Thank you for installing Riak on Mesos. Visit https://github.com/basho-labs/riak-mesos for usage information.
[u1@bootstrapper riak-mesos]$
[u1@bootstrapper riak-mesos]$ dcos riak
Traceback (most recent call last):
File "/home/u1/.dcos/subcommands/riak/env/bin/dcos-riak", line 9, in
load_entry_point('dcos-riak==0.0.1', 'console_scripts', 'dcos-riak')()
File "/home/u1/.dcos/subcommands/riak/env/lib/python2.7/site-packages/pkg_resources/init.py", line 558, in load_entry_point
return get_distribution(dist).load_entry_point(group, name)
File "/home/u1/.dcos/subcommands/riak/env/lib/python2.7/site-packages/pkg_resources/init.py", line 2682, in load_entry_point
return ep.load()
File "/home/u1/.dcos/subcommands/riak/env/lib/python2.7/site-packages/pkg_resources/init.py", line 2355, in load
return self.resolve()
File "/home/u1/.dcos/subcommands/riak/env/lib/python2.7/site-packages/pkg_resources/init.py", line 2361, in resolve
module = import(self.module_name, fromlist=['name'], level=0)
File "/home/u1/.dcos/subcommands/riak/env/lib/python2.7/site-packages/riak_mesos/cli.py", line 26, in
from dcos import config as dcos_config
File "/home/u1/.dcos/subcommands/riak/env/lib/python2.7/site-packages/dcos/config.py", line 10, in
from dcos import constants, jsonitem, subcommand, util
File "/home/u1/.dcos/subcommands/riak/env/lib/python2.7/site-packages/dcos/subcommand.py", line 12, in
from subprocess import PIPE
ImportError: cannot import name PIPE

Is there a dependancy missing that contains PIPE? There are a number of possible packages, but I don't want to be installing blind.

I just hit this exact problem myself last night.

It looks like something changed in dcos==0.4.12 that causes this. I'm looking into fixes/workarounds now.

The changes introduced between dcos==0.4.11 and dcos==0.4.12 made the library compatible only with python-3.4.x, according to the updated README:

dcos/dcos-cli@0.4.11...master#diff-88b99bb28683bd5b7e3a204826ead112R35

I'm going to push out a tweak to our CLI that locks us into dcos==0.4.11 for now, while we investigate longer-term solutions.

@ChiralMedia unrelated to this but possibly of interest to you: we have created a new version of the DC/OS packages, which gives you separate frameworks for running Riak KV and Riak TS in parallel within DC/OS.

If you wish to switch to it, you can do so by removing the repo that points to .../dcoscli-0.4.x.zip and replace it with one that points to .../develop.zip

This will give you 2 separate packages, riak-kv and riak-ts, which default to Riak KV 2.1.4 and Riak TS 1.3.1 respectively.

Meanwhile, I have merged the required changes into the DC/OS packages so if you try to reinstall now you should no longer have this problem.

I'll close this issue, but please feel free to re-open if these updates do not fix the problem for you!

That has fixed it, thanks.

@ChiralMedia You're welcome! Please don't hesitate to raise another issue if you hit any other problems, or have any other questions.