Bug 1161257 - Is python-boto really still required?
Summary: Is python-boto really still required?
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: cloud-init
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Garrett Holmstrom
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2014-11-06 18:56 UTC by Colin Walters
Modified: 2014-11-12 02:42 UTC (History)
7 users (show)

Fixed In Version: cloud-init-0.7.5-8.fc21
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2014-11-12 02:42:51 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
Drop boto (1.20 KB, patch)
2014-11-06 19:06 UTC, Colin Walters
no flags Details | Diff

Description Colin Walters 2014-11-06 18:56:41 UTC
git annotate says that the Requires: python-boto was introduced with 49078476, which is:

commit 4907847669583e847b2249e5c140b12f008c01bc
Author:     Garrett Holmstrom <gholms>
AuthorDate: Fri Sep 23 10:44:26 2011 -0700
Commit:     Garrett Holmstrom <gholms>
CommitDate: Sat Sep 24 15:59:01 2011 -0700

    Initial build (0.6.2-0.1.bzr450)

Now from what I can tell of the history, at one point cloud-init did depend on boto.

But AFAICS, the current sources do not:

$ grep -r boto .
./ChangeLog: - drop dependency on boto for crawling ec2 metadata service.
./ChangeLog: - for boto > 0.6.0 there was a lazy load of the metadata added, when
./ChangeLog: - have the cloudstack datasource test the url before calling into boto to 
./ChangeLog:   avoid the long wait for boto to finish retrying and finally fail when
./cloudinit/sources/__init__.py:            # data that makes boto populate a string for 'klist' rather
./doc/examples/seed/README:     python -c 'import boto.utils, yaml; print(
./doc/examples/seed/README:        yaml.dump(boto.utils.get_instance_metadata()))'
./doc/examples/seed/meta-data:# python -c 'import boto.utils, yaml; print(yaml.dump(boto.utils.get_instance_metadata()))'
./doc/rtd/topics/datasources.rst:.. _boto: http://docs.pythonboto.org/en/latest/

(All examples or docs)

Does it possibly call something in /usr/bin?  Looks like no:

$ for x in $(rpm -ql python-boto | grep /usr/bin | sed -e s,/usr/bin/,,); do grep -r $x .; done
./ChangeLog: - support setting of Acquire::HTTP::Proxy via 'apt_proxy'
./LICENSE:owned or controlled by the contributor, whether already acquired or
./LICENSE:hereafter acquired, that would be infringed by some manner, permitted
./cloudinit/config/cc_apt_configure.py:PROXY_TPL = "Acquire::HTTP::Proxy \"%s\";\n"
./cloudinit/config/cc_apt_configure.py:    cfgs = (('apt_proxy', 'Acquire::HTTP::Proxy "%s";'),
./cloudinit/config/cc_apt_configure.py:            ('apt_http_proxy', 'Acquire::HTTP::Proxy "%s";'),
./cloudinit/config/cc_apt_configure.py:            ('apt_ftp_proxy', 'Acquire::FTP::Proxy "%s";'),
./cloudinit/config/cc_apt_configure.py:            ('apt_https_proxy', 'Acquire::HTTPS::Proxy "%s";'))
./cloudinit/config/cc_apt_pipelining.py:                'Acquire::http::Pipeline-Depth "%s";\n')
./cloudinit/config/cc_apt_pipelining.py:# Acquire::http::Pipeline-Depth can be a value
./cloudinit/helpers.py:            yield self._acquire(name, freq)
./cloudinit/helpers.py:    def _acquire(self, name, freq):
./cloudinit/helpers.py:                raise LockFailure("Failed to acquire lock for %s" % name)
./cloudinit/patcher.py:    imp.acquire_lock()
./doc/examples/cloud-config-chef-oneiric.txt:     Q8NqqR6pydprRFqWe47hsAN7BoYuhWqTtOLSBmnAnzTR5pURoqcquWYiiEavZixJ
./doc/examples/cloud-config-chef.txt:     Q8NqqR6pydprRFqWe47hsAN7BoYuhWqTtOLSBmnAnzTR5pURoqcquWYiiEavZixJ
./doc/examples/cloud-config-disk-setup.txt:#        are allowed and the actual device is acquired from the cloud datasource.
./doc/examples/cloud-config.txt:# apt_proxy (configure Acquire::HTTP::Proxy)
./doc/examples/cloud-config.txt:# These affect Acquire::FTP::Proxy and Acquire::HTTPS::Proxy respectively
./doc/examples/cloud-config.txt:# apt_pipelining (configure Acquire::http::Pipeline-Depth)
./tests/unittests/test_handler/test_handler_apt_configure.py:            r"acquire::%s::proxy\s+[\"']%s[\"'];\n" % (ptype, value),
./tests/unittests/test_handler/test_handler_apt_configure.py:            r"acquire::%s::proxy\s+[\"']%s[\"'];\n" % (ptype, value),

Comment 1 Colin Walters 2014-11-06 18:58:09 UTC
revno: 910 [merge]
committer: Scott Moser <smoser>
branch nick: trunk
timestamp: Fri 2014-01-17 16:34:53 -0500
message:
  drop requirement on boto for its boto.utils.get_instance_metadata()
  
  We had a requirement on boto only to use
  boto.utils.get_instance_metadata().  That had actually caused some pain in
  the past.  This removes a Requires and also one that wasn't python3.

Comment 2 Colin Walters 2014-11-06 19:06:01 UTC
Created attachment 954599 [details]
Drop boto

Comment 3 Matthew Miller 2014-11-06 20:58:02 UTC
Colin, what's the urgency of this? Should we try to get it in F21?

Comment 4 Colin Walters 2014-11-06 21:44:02 UTC
(In reply to Matthew Miller from comment #3)
> Colin, what's the urgency of this? Should we try to get it in F21?

It causes Atomic F21 to pull in python3, not a showstopper.  But a definite Would Be Nice.

Comment 5 Matthew Miller 2014-11-07 04:39:46 UTC
Oh hey, I see that it's pulling it in for the Cloud Base image too. We really should fix this.

Comment 6 Fedora Update System 2014-11-08 02:05:22 UTC
cloud-init-0.7.5-8.fc21 has been submitted as an update for Fedora 21.
https://admin.fedoraproject.org/updates/cloud-init-0.7.5-8.fc21

Comment 7 Fedora Update System 2014-11-10 06:32:43 UTC
Package cloud-init-0.7.5-8.fc21:
* should fix your issue,
* was pushed to the Fedora 21 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing cloud-init-0.7.5-8.fc21'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2014-14597/cloud-init-0.7.5-8.fc21
then log in and leave karma (feedback).

Comment 8 Ryan Brown 2014-11-11 13:28:54 UTC
*** Bug 1161945 has been marked as a duplicate of this bug. ***

Comment 9 Fedora Update System 2014-11-12 02:42:51 UTC
cloud-init-0.7.5-8.fc21 has been pushed to the Fedora 21 stable repository.  If problems still persist, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.