{"push_id":1006174353,"size":34,"distinct_size":34,"ref":"refs/heads/master","head":"96eaa19aacac5d4791008d1da90fbda79e19e387","before":"e5f3d9a5ebbb4a9238e5d5057c8565c9c0fa0fa6","commits":[{"sha":"d90115c3e806f896dc90e226af7b06b21ba92abc","author":{"email":"2c1c04960e5094d519e914b7f827193df42cff08@us.ibm.com","name":"Matt Riedemann"},"message":"neutron: handle attach interface case with no networks\n\nIt's possible to boot an instance without a network and it's\nalso possible to try and attach an interface without specifying\na port, network or fixed IP. If no network is specified on the\nattach request and there are no networks available to the\ninstance's project (shared or not), then the\nallocate_port_for_instance method fails with an IndexError.\n\nThe code is currently checking for a case of ambiguous networks\nwhen a specific network ID is not requested, but is not checking\nfor the case that no network ID is specified and no networks are\navailable. This change adds that check.\n\nA new type of exception is raised from the network API and handled\nin the REST API so we return a 400 to the user rather than a 500.\n\nNote that we don't return an empty network_info to the compute\nmanager because that results in InterfaceAttachFailed raised to\nthe REST API which is interpreted as a 500.\n\nCloses-Bug: #1545117\n\nChange-Id: Iad762ebef08c259339ea5582e65266620fbab0ac","distinct":true,"url":"https://api.github.com/repos/klmitch/nova/commits/d90115c3e806f896dc90e226af7b06b21ba92abc"},{"sha":"47181ae3ebcd1533c22378ee31a4b1f0848926d6","author":{"email":"1f24729187a0de54f720aca4a35d95f1a59ec78e@windriver.com","name":"Ludovic Beliveau"},"message":"Allow saving empty pci_device_pools in ComputeNode object\n\nPrior to this patch, saving a ComputeNode with a pci_device_pools attribute\nthat has no objects specified in it (empty PciDevicePool list) would result in\nthe change not being saved.  Object of type PciDevicePoolList are evaluated\nlike a list, thefore a conditional statement like 'if pools' will always\nevaluate to False even if 'pools' is not None.\n\nWithout this fix, if 'pci_passthrough_whitelist' is cleared in the\nconfiguration, nova scheduler still think a compute node has PCI devices\navailable and can still trigger scheduling an instance with PCI devices on the\nnode.\n\nChange-Id: Ib3c19d569b9b3b23a293ad55dd9023291435d5a6\nCloses-Bug: #1487451","distinct":true,"url":"https://api.github.com/repos/klmitch/nova/commits/47181ae3ebcd1533c22378ee31a4b1f0848926d6"},{"sha":"d6c334765559df07572441647a48debfe51829cb","author":{"email":"2c1c04960e5094d519e914b7f827193df42cff08@us.ibm.com","name":"Matt Riedemann"},"message":"Add functional regression test for list deleted instances on v2.16\n\nThere is a bug such that listing deleted instances with microversion\n2.16 and greater is broken. It results in a 404. This adds a functional\nregression test to exhibit the failure. The fix will build on the test\nto show it's working again.\n\nChange-Id: Ifca42c23e2ead2b533776365de29f874819cb2a8\nRelated-Bug: #1548980","distinct":true,"url":"https://api.github.com/repos/klmitch/nova/commits/d6c334765559df07572441647a48debfe51829cb"},{"sha":"b4f7066e7c074dd2fb50d99df593432937c7a8ae","author":{"email":"b0ca2ed77e072fb1fb035d15d7af87efec8e1a09@tcs.com","name":"Pallavi"},"message":"Update time is not updated when metadata of aggregate is updated\n\nFor example, When aggregate zone is updated, time is not getting updated\nin updated_at field.\n\nSo, modified the code such that time gets updated in updated_at field\nwhenever the aggregate metadata content gets modified.\n\nChange-Id: Icb65313ba85562fadeddbc1890ca5d463e74d3c2\nCloses-Bug: #1538014","distinct":true,"url":"https://api.github.com/repos/klmitch/nova/commits/b4f7066e7c074dd2fb50d99df593432937c7a8ae"},{"sha":"f78659a78a191a6034bd23d8d27a28c7ecce2fcb","author":{"email":"b7a5da1e6209f9510c07a03f0423c37727add225@redhat.com","name":"Matthew Booth"},"message":"Remove unused libvirt _get_all_block_devices and _get_interfaces\n\nThe last user of _get_all_block_devices was removed in change\nI400db60fcc29c2d5e2d3b9dabc055649138468eb\n\nThe last user of _get_interfaces was removed in change\nI2d193ae44a4ac48ad863d237172cf2c1da05e3e9\n\nChange-Id: I997d49026b3e6f3862372a58936d0d09d63a94bd","distinct":true,"url":"https://api.github.com/repos/klmitch/nova/commits/f78659a78a191a6034bd23d8d27a28c7ecce2fcb"},{"sha":"04bbf658e7998d40ffbdb2b6467dfab8dc5fde55","author":{"email":"2c1c04960e5094d519e914b7f827193df42cff08@us.ibm.com","name":"Matt Riedemann"},"message":"libvirt: don't attempt to get baseline cpu features if host cpu model is None\n\nIn certain cases, libvirt can't determine the host's CPU model.\n\nThis is fine when you're setting virt_type=qemu and cpu_mode=none,\nfor example (like with nested virtualization).\n\nIf we can't determine the host's cpu model, don't attempt to get\ncpu features on startup of the compute service (since it will\ncrash the service).\n\nChange-Id: I81ae5a04c7b4eb84e976902a575d890d4e850151\nCloses-Bug: #1447342","distinct":true,"url":"https://api.github.com/repos/klmitch/nova/commits/04bbf658e7998d40ffbdb2b6467dfab8dc5fde55"},{"sha":"2aa81e9ef6d04f2fdf1c69e16ceeef156cefedfa","author":{"email":"334d9d9e491500a9971bcbc2f38fc3632fc164d6@citrix.com","name":"Jianghua Wang"},"message":"XenAPI: introduce unit test for XenAPI plugins\n\nThis is the first patch set to introduce unit test for XenAPI\nplugins. It contains the common part depended by other plugin\ntests. In order to make this first patch set to be as simple\nas possible, it only covers the test framework and the unit\ntest for a simple plugin.\n\nChange-Id: Iece439661cc4337e826d0eb15b438d2716214fb5","distinct":true,"url":"https://api.github.com/repos/klmitch/nova/commits/2aa81e9ef6d04f2fdf1c69e16ceeef156cefedfa"},{"sha":"62835426f72ba3a3a0e2217127fdb3525e8543a5","author":{"email":"02e0a999c50b1f88df7a8f5a04e1b76b35ea6a88@lascii.com","name":"Andrew Laski"},"message":"Create BuildRequest object during boot process\n\nThe BuildRequest object represents a boot request before an instance has\nbeen created and written to the database. It will be required to respond\nto API requests to list/show an instance in cellsv2 where the instance\nis not written to the database immediately. An upcoming change will\nmodify the boot process to defer instance creation until after\nscheduling has picked a cell/host and having this BuildRequest object\npersisted is a prerequisite for that work. The BuildRequest object\nlifetime ends as soon as the instance has been written to a database and\na mapping is in place for it. Until instance creation moves the\nBuildRequest object is destroyed rather quickly.\n\nNote there is a small optimization added here such that when creating\ninstances in the API, only populate the SecurityGroupList once rather\nthan each pass in the for loop (if building multiple instances).\n\nChange-Id: I080fa53d13f7301f6f7f2977a8e3cb287a46c02c\nPartially-implements: bp cells-scheduling-interaction","distinct":true,"url":"https://api.github.com/repos/klmitch/nova/commits/62835426f72ba3a3a0e2217127fdb3525e8543a5"},{"sha":"c87fc2344c793017770636f442ba890027826225","author":{"email":"02e0a999c50b1f88df7a8f5a04e1b76b35ea6a88@lascii.com","name":"Andrew Laski"},"message":"Make InstanceMappings.cell_id nullable\n\nIn order to indicate that an instance boot request has been received,\nbut the instance has not yet been scheduled to a cell, it should be\nmapped to a null cell_id. This will mean that an instance list/show will\nneed to fetch the instance details from the BuildRequest object rather\nthan looking for the instance in a cell database. A migration is added\nand the InstanceMapping object is modified to make this possible.\n\nPartially-implements: bp cells-scheduling-interaction\n\nChange-Id: Iee768512314f11a13e2a85a1e7d5442864ddbc4b","distinct":true,"url":"https://api.github.com/repos/klmitch/nova/commits/c87fc2344c793017770636f442ba890027826225"},{"sha":"d99594a33686ccb31f668e09c0750319d8bce83a","author":{"email":"dfec71a60d748e04018e2acc28a79f601ed6c5bc@163.com","name":"Wen Zhi Yu"},"message":"Fix missing of unit in HostState.__repr__()\n\nUnit of RAM and Disk size is missing in HostState.__repr__(), see[1]\n\n[1]https://github.com/openstack/nova/blob/13.0.0.0b2/nova/scheduler/host_manager.py#L311\n\nChange-Id: Ibb9a06a0eaa112c3a575080b0775cc2fd97d53cc","distinct":true,"url":"https://api.github.com/repos/klmitch/nova/commits/d99594a33686ccb31f668e09c0750319d8bce83a"},{"sha":"ccbe363f306c93ec3d2b19fbd6a84d1c1cd76b48","author":{"email":"2f4df71b64d5809dd813a20c9f7aacdb9688d5d0@de.ibm.com","name":"Markus Zoeller"},"message":"Sample nova.conf file has missing/duplicated config options\n\nThe generated sample.nova.conf missed config options from these modules:\n   nova.virt.hyperv.eventhandler\n   nova.virt.libvirt.volume.aoe\n   nova.virt.libvirt.volume.glusterfs\n   nova.virt.libvirt.volume.iscsi\n   nova.virt.libvirt.volume.iser\n   nova.virt.libvirt.volume.net\n   nova.virt.libvirt.volume.nfs\n   nova.virt.libvirt.volume.quobyte\n   nova.virt.libvirt.volume.remotefs\n   nova.virt.libvirt.volume.scality\n   nova.virt.libvirt.volume.smbfs\n\nThe generated sample.nova.conf has the config options twice from module:\n   nova.cmd.spicehtml5proxy.opts\n\nChange-Id: I81524527c204c56547d27a9450fffafa0f81c11e\nCo-Authored-By: Dirk Mueller <dirk@dmllr.de>\nCo-Authored-By: zwei <leidong@unitedstack.com>\nCo-Authored-By: Michal Jura <mjura@suse.com>\nCloses-Bug: #1532228\nCloses-Bug: #1533132","distinct":true,"url":"https://api.github.com/repos/klmitch/nova/commits/ccbe363f306c93ec3d2b19fbd6a84d1c1cd76b48"},{"sha":"008f9b288dca5a6c71508383b7dde0c742d15935","author":{"email":"a2327e19ac1c21918203f35d51e3c32c43920008@inf.u-szeged.hu","name":"Gábor Antal"},"message":"Replaced unittest and unittest2 to testtools\n\nIn some places, we use unittest, other places unittest2.\nHowever, it is better to use testtools, as mentioned before\n\nChange-Id: Ide224f27c8bd3669a148e7d11f519cf0a2a73380","distinct":true,"url":"https://api.github.com/repos/klmitch/nova/commits/008f9b288dca5a6c71508383b7dde0c742d15935"},{"sha":"410377ab4bc1f423bd33c6589517deb2ba303468","author":{"email":"d95b56ce41a2e1ac4cecdd398defd7414407cc08@review.openstack.org","name":"Jenkins"},"message":"Merge \"XenAPI: introduce unit test for XenAPI plugins\"","distinct":true,"url":"https://api.github.com/repos/klmitch/nova/commits/410377ab4bc1f423bd33c6589517deb2ba303468"},{"sha":"94b5bac65ccbb22a1503eb2f0d131f6ef7ce4b3c","author":{"email":"d95b56ce41a2e1ac4cecdd398defd7414407cc08@review.openstack.org","name":"Jenkins"},"message":"Merge \"Fix missing of unit in HostState.__repr__()\"","distinct":true,"url":"https://api.github.com/repos/klmitch/nova/commits/94b5bac65ccbb22a1503eb2f0d131f6ef7ce4b3c"},{"sha":"b863d248f1452f33247210528bb493db7e8c8c3c","author":{"email":"d95b56ce41a2e1ac4cecdd398defd7414407cc08@review.openstack.org","name":"Jenkins"},"message":"Merge \"Replaced unittest and unittest2 to testtools\"","distinct":true,"url":"https://api.github.com/repos/klmitch/nova/commits/b863d248f1452f33247210528bb493db7e8c8c3c"},{"sha":"c55ae85bec9b925b4c6eb2112fdb5110f7470b56","author":{"email":"d95b56ce41a2e1ac4cecdd398defd7414407cc08@review.openstack.org","name":"Jenkins"},"message":"Merge \"Sample nova.conf file has missing/duplicated config options\"","distinct":true,"url":"https://api.github.com/repos/klmitch/nova/commits/c55ae85bec9b925b4c6eb2112fdb5110f7470b56"},{"sha":"09d27bdf2d1d280787e8bb875ec50b5bdaf49e25","author":{"email":"78c2c705d32f41ddd0dddd01cc56e39491384260@cn.ibm.com","name":"jichenjc"},"message":"Revert \"Generate better validation error message when using name regexes\"\n\nThis reverts commit 8093549e58e1c2de03e29aefa5bf5d1d71f31324.\n\nsome command like nova aggregate-create foo will fail\nguess the reason is we honor the format of the parameter\nbut it's possible to set the type like following \navailability_zone['type'] = ['string', 'null']\nwhich makes the input \n{\"aggregate\": {\"name\": \"foo\", \"availability_zone\": null}}\nis also valid\n\nso in the following code, re.search encounter a NONE value\nand raise a TypeError\n\n@jsonschema.FormatChecker.cls_checks('name', exception.InvalidName)\ndef _validate_name(instance):\n    regex = parameter_types.valid_name_regex\n    if re.search(regex.regex, instance):\n\n\nguess we can copy additional code from jsonschema but that need additional effort.\n\nChange-Id: I69619c1b5a5dd3b239100fc52cb65488fbc72609","distinct":true,"url":"https://api.github.com/repos/klmitch/nova/commits/09d27bdf2d1d280787e8bb875ec50b5bdaf49e25"},{"sha":"5572a50f6dfcea8ff332d7efc37ac09ca1a6e951","author":{"email":"15d5534892bd437fcd5950d2c8226f57a1ab5e49@yahoo-inc.com","name":"melanie witt"},"message":"Use db connection from RequestContext during queries\n\nNow that db connections can be specified through the RequestContext,\nany queries on tables that reside in cell dbs must use the methods\nprovided to create transaction context managers on-the-fly using the\ndb connection from the RequestContext instead of using the\n\"main_context_manager\" for all accesses. The get_context_manager()\nmethod returns the main_context_manager if no db connection is\nfound in the RequestContext, so things continue to work even when\nno cell dbs exist.\n\nThe tables that reside in cell dbs are based on the Cells v2\ndatabase split doc [1].\n\nRelated to blueprint cells-db-connection-switching\n\n[1] https://review.openstack.org/#/c/277543\n\nChange-Id: I4452116ae0c88ba18672839f2856247092bf6b9a","distinct":true,"url":"https://api.github.com/repos/klmitch/nova/commits/5572a50f6dfcea8ff332d7efc37ac09ca1a6e951"},{"sha":"e33f8b39c0922584e785732b94c6a5dbdcaffeba","author":{"email":"d95b56ce41a2e1ac4cecdd398defd7414407cc08@review.openstack.org","name":"Jenkins"},"message":"Merge \"Create BuildRequest object during boot process\"","distinct":true,"url":"https://api.github.com/repos/klmitch/nova/commits/e33f8b39c0922584e785732b94c6a5dbdcaffeba"},{"sha":"2c732aa654c3ce1be7f04b557720de432b1b1578","author":{"email":"d95b56ce41a2e1ac4cecdd398defd7414407cc08@review.openstack.org","name":"Jenkins"},"message":"Merge \"Make InstanceMappings.cell_id nullable\"","distinct":true,"url":"https://api.github.com/repos/klmitch/nova/commits/2c732aa654c3ce1be7f04b557720de432b1b1578"}]}