One of our builds the runs on CircleCI 2.0 machine started failing recently because of import errors in one of our scripts. We install
boto as a requirement before running the script, but the following traceback occurs. We are using it to talk to S3, so GCP libraries should not be needed
Traceback (most recent call last): File "my-script.py", line 50, in <module> import boto File "/opt/circleci/.pyenv/versions/2.7.12/lib/python2.7/site-packages/boto/__init__.py", line 1216, in <module> boto.plugin.load_plugins(config) File "/opt/circleci/.pyenv/versions/2.7.12/lib/python2.7/site-packages/boto/plugin.py", line 93, in load_plugins _import_module(file) File "/opt/circleci/.pyenv/versions/2.7.12/lib/python2.7/site-packages/boto/plugin.py", line 75, in _import_module return imp.load_module(name, file, filename, data) File "/usr/lib/python2.7/dist-packages/google_compute_engine/boto/boto_config.py", line 29, in <module> from google_compute_engine import config_manager ImportError: No module named google_compute_engine
From the following issue it appears that this is due to the
/etc/boto.cfg file, which I looked at and does have the following section:
[Plugin] plugin_directory = /usr/lib/python2.7/dist-packages/google_compute_engine/boto
SSHing into the build and running
pip install google-compute-engine does fix the issue, but I’m confused as to why our builds broke at this point. I don’t think we made any changes on our end that would have effected this.