Netflix-Skunkworks / aardvark

Aardvark is a multi-account AWS IAM Access Advisor API

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Python2 vs Python3

heydonovan opened this issue · comments

Was receiving this error, went down a rabbit hole, turns out I was using the wrong Python version. It just wasn't obvious from the README as to which version to use. :)

(.virtualenv) $ aardvark config
Traceback (most recent call last):
  File "/Users/heydonovan/aardvark/.virtualenv/bin/aardvark", line 11, in <module>
    load_entry_point('aardvark', 'console_scripts', 'aardvark')()
    └ <function load_entry_point at 0x1041f2f80>
  File "/Users/heydonovan/aardvark/.virtualenv/lib/python3.7/site-packages/pkg_resources/__init__.py", line 489, in load_entry_point
    return get_distribution(dist).load_entry_point(group, name)
           │                │                      │      └ 'aardvark'
           │                │                      └ 'console_scripts'
           │                └ 'aardvark'
           └ <function get_distribution at 0x1041f2ef0>
  File "/Users/heydonovan/aardvark/.virtualenv/lib/python3.7/site-packages/pkg_resources/__init__.py", line 2793, in load_entry_point
    return ep.load()
           └ EntryPoint.parse('aardvark = aardvark.manage:main')
  File "/Users/heydonovan/aardvark/.virtualenv/lib/python3.7/site-packages/pkg_resources/__init__.py", line 2411, in load
    return self.resolve()
           └ EntryPoint.parse('aardvark = aardvark.manage:main')
  File "/Users/heydonovan/aardvark/.virtualenv/lib/python3.7/site-packages/pkg_resources/__init__.py", line 2417, in resolve
    module = __import__(self.module_name, fromlist=['__name__'], level=0)
                        └ EntryPoint.parse('aardvark = aardvark.manage:main')
  File "/Users/heydonovan/aardvark/aardvark/aardvark/manage.py", line 3, in <module>
    import Queue
ModuleNotFoundError: No module named 'Queue'
(.virtualenv) $ python --version
Python 3.7.4

Great point, it's not anywhere that I can find. I'd like for the solution to be move to Python3 support since Py2 isn't long for this world. We moved over Repokid recently and it's a larger project so this shouldn't be too difficult.

commented

I have manage to install it with python3 with following change in manage.py (two lines):

import queue
ACCOUNT_QUEUE = queue.Queue()

Sounds good, we have it on our October plan to migrate Aardvark to Py3, but if somebody cuts a PR sooner I won't complain.

Aardvark now supports Py3. 🎉