Re: [openstack-dev] [nova] [glance] [heat] bug 1203680 - fix requires doc
On 02/27/2014 12:52 AM, Mike Spreitzer wrote: Dean Troyer dtro...@gmail.com wrote on 02/26/2014 03:28:04 PM: On Wed, Feb 26, 2014 at 1:09 PM, Mike Spreitzer mspre...@us.ibm.com wrote: Thanks for the further updates. I have just one question about those. One way to do both unit testing and system (integration) testing is to: git clone your favorite project to make a working local repo somewhere on your testing machine, edit and commit there, then use DevStack to create a running system in /opt/stack using your modified project in place of the copy at git.openstack.org. Yes, that is similar to what Sean mentioned, the difference being that his repos are actually in VirtualBox Shared Folders so the Linux VM has access to them. He works on them natively on his laptop so the VM doesn't need his desktop toolset installed. Sounds like he does unit testing in the VM and editing in the host laptop. In other words, the things we are documenting (testing) are all done in the VM. No, actually I usually do unit testing on laptops / desktops. There is no reason to take VM overhead for unit tests when I've got a perfectly working local env that can run tox. :) The point is a ton of code is fixable / testable in the small. Then exposing to a full environment once you've gotten it solid shape. I think the most direct approach would be to generalize the title of https://wiki.openstack.org/wiki/Gerrit_Workflow#Unit_Tests_Onlyand generalize the introductory remark to include a reference to https://wiki.openstack.org/wiki/Testing#Indirect_Approach. Does this make sense to you? Sure. My edits were prompted by the loss of some information useful to making a choice between the two and tweaking the phrasing and sections. There are a lot of ways to do this, enumerating them is beyond the scope of that doc IMHO. I think having the basic components/ requirements available should be enough, but then I also have my workflow figured out so i probably am still missing something. Sure, documenting all the possible tropes and tweaks (such as editing shared files on another machine) is not needed. I think documenting the basic ideas is helpful to newbies. As far as my experience goes, the fix to 1203680 would also cover 1203723: the only thing I find lacking for nova unit testing in Ubuntu is libmysqlclient-dev, which is among the testing requirements of glance (see DevStack's files/apts/glance). As far as I can tell, Sean Dague is saying the fix to 1203680 is wrong because it binds unit testing to DevStack and he thinks unit testing should be independent of DevStack. Let me summarize: Unit testing is not a default requirement for DevStack. But do we stipulate the converse: shall DevStack be a requirement for unit testing? That is what I think Sean is objecting to. But I am getting weary and wary of speaking so much on his behalf. I wonder if anyone else wants to chime in on this. If the only people who speak up think that DevStack should be a requirement for unit testing then this should be documented, and I am likely to do so. Right, that's what I object to. Because it's not a requirement for unit testing. A requirement for unit testing is just that you run an operating system that has basic tools, and that you can install pip and tox == 1.6 in that environment. Individual unit tests have additional requirements, but they don't require a big running devstack environment. That's *one* way you might decide to build such a thing, but it's really not the best way. I think what you probably actually want is some way to let/make tox actually install the -dev packages that are needed to run the unit tests in questions. That's something I think monty has thought about in the past. And I agree, that would probably be handy. -Sean -- Sean Dague Samsung Research America s...@dague.net / sean.da...@samsung.com http://dague.net signature.asc Description: OpenPGP digital signature ___ OpenStack-dev mailing list OpenStack-dev@lists.openstack.org http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
Re: [openstack-dev] [nova] [glance] [heat] bug 1203680 - fix requires doc
On Wed, Feb 26, 2014 at 12:53 AM, Mike Spreitzer mspre...@us.ibm.comwrote: (I added some tags in the subject line, probably should have been there from the start.) Thanks guys, for an informative discussion. I have updated https://wiki.openstack.org/wiki/Gerrit_Workflow and https://wiki.openstack.org/wiki/Testing to incorporate what I have learned. Thanks for the updates, but I've massaged the project bits and restored/expanded the reasons to consider one or the other option. But I still do not detect consensus on what to do about bug 1203680. It looks like Sean thinks the fix is just wrong, but I'm not hearing much about what a good fix would look like. As best I can tell, it would involve wrapping tox in a script that recapitulates the system package install logic from DevStack (I know of no other scripting for installing needed system packages). That bug is closed and against Grizzly, is that the one you meant to reference? I added a note about INSTALL_TESTONLY_PACKAGES to the wiki page above and it will be in the next rev of devstack.org. dt -- Dean Troyer dtro...@gmail.com ___ OpenStack-dev mailing list OpenStack-dev@lists.openstack.org http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
Re: [openstack-dev] [nova] [glance] [heat] bug 1203680 - fix requires doc
Dean Troyer dtro...@gmail.com wrote on 02/26/2014 12:53:31 PM: Thanks for the updates, but I've massaged the project bits and restored/expanded the reasons to consider one or the other option. Thanks for the further updates. I have just one question about those. One way to do both unit testing and system (integration) testing is to: git clone your favorite project to make a working local repo somewhere on your testing machine, edit and commit there, then use DevStack to create a running system in /opt/stack using your modified project in place of the copy at git.openstack.org. I think this is what Sean Dague advocates (based on his remarks earlier in this thread), have tried it myself, and have documented it at https://wiki.openstack.org/wiki/Testing#Indirect_Approach . I think https://wiki.openstack.org/wiki/Gerrit_Workflow#Project_Setup should reference that somehow; I think the most direct approach would be to generalize the title of https://wiki.openstack.org/wiki/Gerrit_Workflow#Unit_Tests_Only and generalize the introductory remark to include a reference to https://wiki.openstack.org/wiki/Testing#Indirect_Approach . Does this make sense to you? That bug is closed and against Grizzly, is that the one you meant to reference? I added a note about INSTALL_TESTONLY_PACKAGES to the wiki page above and it will be in the next rev of devstack.org. Yes, I am referring to https://bugs.launchpad.net/devstack/+bug/1203680 --- and also to https://bugs.launchpad.net/devstack/+bug/1203723 As far as my experience goes, the fix to 1203680 would also cover 1203723: the only thing I find lacking for nova unit testing in Ubuntu is libmysqlclient-dev, which is among the testing requirements of glance (see DevStack's files/apts/glance). As far as I can tell, Sean Dague is saying the fix to 1203680 is wrong because it binds unit testing to DevStack and he thinks unit testing should be independent of DevStack. Interestingly, installing DevStack with INSTALL_TESTONLY_PACKAGES set to True will have a global side-effect and so will provide the unit testing requirements even if the indirect procedure ( https://wiki.openstack.org/wiki/Testing#Indirect_Approach) that Sean advocates is used. In this way the only tie between unit testing and DevStack is that they be done on the same machine. Maybe this is the way to go? Thanks, Mike___ OpenStack-dev mailing list OpenStack-dev@lists.openstack.org http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
Re: [openstack-dev] [nova] [glance] [heat] bug 1203680 - fix requires doc
On Wed, Feb 26, 2014 at 1:09 PM, Mike Spreitzer mspre...@us.ibm.com wrote: Thanks for the further updates. I have just one question about those. One way to do both unit testing and system (integration) testing is to: git clone your favorite project to make a working local repo somewhere on your testing machine, edit and commit there, then use DevStack to create a running system in /opt/stack using your modified project in place of the copy at git.openstack.org. Yes, that is similar to what Sean mentioned, the difference being that his repos are actually in VirtualBox Shared Folders so the Linux VM has access to them. He works on them natively on his laptop so the VM doesn't need his desktop toolset installed. I think the most direct approach would be to generalize the title of https://wiki.openstack.org/wiki/Gerrit_Workflow#Unit_Tests_Only and generalize the introductory remark to include a reference to https://wiki.openstack.org/wiki/Testing#Indirect_Approach . Does this make sense to you? Sure. My edits were prompted by the loss of some information useful to making a choice between the two and tweaking the phrasing and sections. There are a lot of ways to do this, enumerating them is beyond the scope of that doc IMHO. I think having the basic components/requirements available should be enough, but then I also have my workflow figured out so i probably am still missing something. As far as my experience goes, the fix to 1203680 would also cover 1203723: the only thing I find lacking for nova unit testing in Ubuntu is libmysqlclient-dev, which is among the testing requirements of glance (see DevStack's files/apts/glance). As far as I can tell, Sean Dague is saying the fix to 1203680 is wrong because it binds unit testing to DevStack and he thinks unit testing should be independent of DevStack. Let me summarize: Unit testing is not a default requirement for DevStack. If you want it, we have #testonly tags in the system packaging prereq files that will be installed when INSTALL_TESTONLY_PACKAGES=True. Following that, missing system package requirements that affect only unit testing can be added with the #testonly tag. It is good form to attempt to verify those added on both Ubuntu and Fedora, even better form to get RHEL and SuSE. Interestingly, installing DevStack with INSTALL_TESTONLY_PACKAGES set to True will have a global side-effect and so will provide the unit testing requirements even if the indirect procedure ( https://wiki.openstack.org/wiki/Testing#Indirect_Approach) that Sean advocates is used. In this way the only tie between unit testing and DevStack is that they be done on the same machine. Maybe this is the way to go? That is exactly what that variable is for. There are times we don't want those packages installed and it is MUCH easier to add them than to remove them. dt -- Dean Troyer dtro...@gmail.com ___ OpenStack-dev mailing list OpenStack-dev@lists.openstack.org http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
Re: [openstack-dev] [nova] [glance] [heat] bug 1203680 - fix requires doc
Dean Troyer dtro...@gmail.com wrote on 02/26/2014 03:28:04 PM: On Wed, Feb 26, 2014 at 1:09 PM, Mike Spreitzer mspre...@us.ibm.com wrote: Thanks for the further updates. I have just one question about those. One way to do both unit testing and system (integration) testing is to: git clone your favorite project to make a working local repo somewhere on your testing machine, edit and commit there, then use DevStack to create a running system in /opt/stack using your modified project in place of the copy at git.openstack.org. Yes, that is similar to what Sean mentioned, the difference being that his repos are actually in VirtualBox Shared Folders so the Linux VM has access to them. He works on them natively on his laptop so the VM doesn't need his desktop toolset installed. Sounds like he does unit testing in the VM and editing in the host laptop. In other words, the things we are documenting (testing) are all done in the VM. I think the most direct approach would be to generalize the title of https://wiki.openstack.org/wiki/Gerrit_Workflow#Unit_Tests_Only and generalize the introductory remark to include a reference to https://wiki.openstack.org/wiki/Testing#Indirect_Approach . Does this make sense to you? Sure. My edits were prompted by the loss of some information useful to making a choice between the two and tweaking the phrasing and sections. There are a lot of ways to do this, enumerating them is beyond the scope of that doc IMHO. I think having the basic components/ requirements available should be enough, but then I also have my workflow figured out so i probably am still missing something. Sure, documenting all the possible tropes and tweaks (such as editing shared files on another machine) is not needed. I think documenting the basic ideas is helpful to newbies. As far as my experience goes, the fix to 1203680 would also cover 1203723: the only thing I find lacking for nova unit testing in Ubuntu is libmysqlclient-dev, which is among the testing requirements of glance (see DevStack's files/apts/glance). As far as I can tell, Sean Dague is saying the fix to 1203680 is wrong because it binds unit testing to DevStack and he thinks unit testing should be independent of DevStack. Let me summarize: Unit testing is not a default requirement for DevStack. But do we stipulate the converse: shall DevStack be a requirement for unit testing? That is what I think Sean is objecting to. But I am getting weary and wary of speaking so much on his behalf. I wonder if anyone else wants to chime in on this. If the only people who speak up think that DevStack should be a requirement for unit testing then this should be documented, and I am likely to do so. Thanks, Mike___ OpenStack-dev mailing list OpenStack-dev@lists.openstack.org http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
Re: [openstack-dev] [nova] [glance] [heat] bug 1203680 - fix requires doc
(I added some tags in the subject line, probably should have been there from the start.) Thanks guys, for an informative discussion. I have updated https://wiki.openstack.org/wiki/Gerrit_Workflow and https://wiki.openstack.org/wiki/Testing to incorporate what I have learned. Like Ben I know of no more greased path from update to integration testing than git pull and manually recycle the right processes. If there is something better, please let us know. But I still do not detect consensus on what to do about bug 1203680. It looks like Sean thinks the fix is just wrong, but I'm not hearing much about what a good fix would look like. As best I can tell, it would involve wrapping tox in a script that recapitulates the system package install logic from DevStack (I know of no other scripting for installing needed system packages). Thanks, Mike___ OpenStack-dev mailing list OpenStack-dev@lists.openstack.org http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev