<p dir="ltr">I think it is indeed better to just use virtualenv in order to be safe. <br>
The error you are posting means that there is a corruption somehow on the python environment on your docker image maybe due to those force installs. I would start from scratch. Do you use a Dockerfile you can share?<br>
</p>
<br><div class="gmail_quote"><div dir="ltr">Le lun. 8 août 2016 20:38, Barta, Hank <<a href="mailto:hank.barta@sandc.com">hank.barta@sandc.com</a>> a écrit :<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Pierre,<br>
Thanks for the quick reply.<br>
<br>
We're running Buildbot in a Docker container. Will the --force-reinstall lead to an incoherent state for Buildbot? I'm not really concerned about other apps because Buildbot is the only thing we plan to run in the container.<br>
<br>
Will Virtualenv solve the seeming version conflict between SQLAlchemy and SQLAlchemy-Migrate versions (and what Buildbot needs?)<br>
<br>
I'm far from a Python guru so I'm not sure how to find what versions of these two packages will play nice with each other and support the needs of Buildbot other than trial and error. That seems like a pretty tedious adventure. ;)<br>
<br>
Right now I'm working in a 16.04 LTS based container so I can use current versions of these packages. I did not have this conflict with the older stuff ( 0.8.8 on Ubuntu 14.04) but it did not send email notification either.<br>
<br>
Thanks,<br>
hank<br>
<br>
From: Pierre Tardy [mailto:<a href="mailto:tardyp@gmail.com" target="_blank">tardyp@gmail.com</a>]<br>
Sent: Monday, August 08, 2016 1:07 PM<br>
To: Barta, Hank <<a href="mailto:hank.barta@sandc.com" target="_blank">hank.barta@sandc.com</a>>; users (<a href="mailto:users@buildbot.net" target="_blank">users@buildbot.net</a>) <<a href="mailto:users@buildbot.net" target="_blank">users@buildbot.net</a>><br>
Subject: Re: [<a href="mailto:users@bb.net" target="_blank">users@bb.net</a>] SQLAlchemy and SQLAlchemy-Migrate versions?<br>
<br>
Hi Hank,<br>
<br>
It is highly recommended to use virtualenv to install buildbot.<br>
Messing up with distro python packages with such options as --force-reinstall will lead to incoherent state and maybe instability of other distro programs.<br>
<br>
<a href="http://trac.buildbot.net/wiki/RunningBuildbotWithVirtualEnv" rel="noreferrer" target="_blank">http://trac.buildbot.net/wiki/RunningBuildbotWithVirtualEnv</a><br>
<br>
<br>
<br>
<br>
Le lun. 8 août 2016 à 19:06, Barta, Hank <<a href="mailto:hank.barta@sandc.com" target="_blank">hank.barta@sandc.com</a>> a écrit :<br>
OS: Ubuntu 16.04 LTS<br>
Python 2.7.12<br>
Buildbot version: 0.8.12<br>
Twisted version: 16.0.0<br>
<br>
I'm confused. The manual at <a href="http://docs.buildbot.net/current/manual/installation.html#requirements" rel="noreferrer" target="_blank">http://docs.buildbot.net/current/manual/installation.html#requirements</a> (Says "Buildbot 0.8.12 documentation" at the top of the page) states:<br>
<br>
"Buildbot requires SQLAlchemy 0.6.0 or higher. SQLAlchemy allows Buildbot to build database schemas and queries for a wide variety of database systems."<br>
<br>
I have the default package for Ubuntu 16.04 installed:<br>
"ii  python-sqlalchemy          1.0.11+ds1-1ubuntu2             all          SQL toolkit and Object Relational Mapper for Python"<br>
(Looks like 1.0.11 to me.)<br>
<br>
A bit further on the same page I see:<br>
"Buildbot requires one of the following SQLAlchemy-Migrate versions: 0.7.1, 0.7.2 and 0.9. SQLAlchemy-Migrate-0.9 is required for compatibility with SQLAlchemy versions 0.8 and above. Buildbot uses SQLAlchemy-Migrate to manage schema upgrades from version to version."<br>
<br>
I install 0.9 using:<br>
"pip install -I sqlalchemy-migrate==0.9 --force-reinstall"<br>
<br>
When I run Buildbot it starts up but when it tries to send email, it gets an error:<br>
2016-08-08 16:50:29+0000 [-] Exception caught notifying <buildbot.status.mail.MailNotifier object at 0x7f9aa740e390> of buildFinished event<br>
2016-08-08 16:50:29+0000 [-] Unhandled Error<br>
        Traceback (most recent call last):<br>
          File "/usr/lib/python2.7/dist-packages/buildbot/status/build.py", line 320, in buildFinished<br>
            w.callback(self)<br>
          File "/usr/lib/python2.7/dist-packages/twisted/internet/defer.py", line 393, in callback<br>
            self._startRunCallbacks(result)<br>
          File "/usr/lib/python2.7/dist-packages/twisted/internet/defer.py", line 501, in _startRunCallbacks<br>
            self._runCallbacks()<br>
          File "/usr/lib/python2.7/dist-packages/twisted/internet/defer.py", line 588, in _runCallbacks<br>
            current.result = callback(current.result, *args, **kw)<br>
        --- <exception caught here> ---<br>
          File "/usr/lib/python2.7/dist-packages/buildbot/status/builder.py", line 597, in _buildFinished<br>
            w.buildFinished(name, s, results)<br>
          File "/usr/lib/python2.7/dist-packages/buildbot/status/mail.py", line 537, in buildFinished<br>
            return self.buildMessage(name, [build], results)<br>
          File "/usr/lib/python2.7/dist-packages/buildbot/status/mail.py", line 735, in buildMessage<br>
            build=build, results=build.results)<br>
          File "/usr/lib/python2.7/dist-packages/buildbot/status/mail.py", line 716, in buildMessageDict<br>
            self.master_status)<br>
          File "/var/lib/devops/buildbot/master/master.cfg", line 143, in messageFormatter<br>
            result = util.Results[results]<br>
          File "/usr/lib/python2.7/dist-packages/buildbot/plugins/db.py", line 238, in __getattr__<br>
            raise AttributeError(str(err))<br>
        exceptions.AttributeError: Requirements are not satisfied for buildbot.util:Results: (sqlalchemy-migrate 0.9 (/usr/local/lib/python2.7/dist-packages), Requirement.parse('sqlalchemy-migrate==0.7.2'))<br>
<br>
If I try sqlalchemy-migrate==0.7.2 the master errors on startup with:<br>
2016-08-08 16:46:43+0000 [-] while starting BuildMaster<br>
        Traceback (most recent call last):<br>
          File "/usr/lib/python2.7/dist-packages/twisted/internet/defer.py", line 501, in _startRunCallbacks<br>
            self._runCallbacks()<br>
          File "/usr/lib/python2.7/dist-packages/twisted/internet/defer.py", line 588, in _runCallbacks<br>
            current.result = callback(current.result, *args, **kw)<br>
          File "/usr/lib/python2.7/dist-packages/twisted/internet/defer.py", line 1184, in gotResult<br>
            _inlineCallbacks(r, g, deferred)<br>
          File "/usr/lib/python2.7/dist-packages/twisted/internet/defer.py", line 1128, in _inlineCallbacks<br>
            result = g.send(result)<br>
        --- <exception caught here> ---<br>
          File "/usr/lib/python2.7/dist-packages/buildbot/master.py", line 206, in startService<br>
            yield self.db.setup()<br>
          File "/usr/lib/python2.7/dist-packages/buildbot/db/connector.py", line 101, in setup<br>
            basedir=self.basedir)<br>
          File "/usr/lib/python2.7/dist-packages/buildbot/db/enginestrategy.py", line 249, in create_engine<br>
            return sa.create_engine(*args, **kwargs)<br>
          File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/engine/__init__.py", line 386, in create_engine<br>
            return strategy.create(*args, **kwargs)<br>
          File "/usr/lib/python2.7/dist-packages/buildbot/db/enginestrategy.py", line 203, in create<br>
            self.check_sqlalchemy_version()<br>
          File "/usr/lib/python2.7/dist-packages/buildbot/db/enginestrategy.py", line 198, in check_sqlalchemy_version<br>
            "SQLAlchemy-Migrate version %d.%d.%d" % (version, mvt[0], mvt[1], mvt[2]))<br>
        exceptions.RuntimeError: SQLAlchemy version 1.0.14 is not supported by SQLAlchemy-Migrate version 0.7.2<br>
<br>
(Hmmm... package name is 1.0.11 and module identifies itself as 1.0.14 ...)<br>
<br>
What versions of these modules should I be running?<br>
<br>
Thanks,<br>
hank<br>
________________________________<br>
NOTICE OF CONFIDENTIALITY:<br>
This message may contain information that is considered confidential and which may be prohibited from disclosure under applicable law or by contractual agreement. The information is intended solely for the use of the individual or entity named above. If you are not the intended recipient, you are hereby notified that any disclosure, copying, distribution or use of the information contained in or attached to this message is strictly prohibited. If you have received this email transmission in error, please notify the sender by replying to this email and then delete it from your system.<br>
_______________________________________________<br>
users mailing list<br>
<a href="mailto:users@buildbot.net" target="_blank">users@buildbot.net</a><br>
<a href="https://lists.buildbot.net/mailman/listinfo/users" rel="noreferrer" target="_blank">https://lists.buildbot.net/mailman/listinfo/users</a><br>
</blockquote></div>