8043 Commits

Author SHA1 Message Date
Ruby Loo
c6694b7776 multinode, multitenant grenade votes in gate
The multinode, multitenant grenade job seems healthy again, lets
have it vote in gate as well as in check.

This is a follow up to Iab5fc999fcfa427549192ec73bd076a588f37e20.

Change-Id: Ib3d8c3cf1c906c6e958650ad7b1a1942e5d9a9c3
2018-03-12 10:47:59 -04:00
Zuul
49946235be Merge "Use more granular mocking in test_utils" 2018-03-12 14:06:17 +00:00
Zuul
46fd1a3d96 Merge "Update links in README" 2018-03-12 12:55:52 +00:00
Zuul
0c32e46c27 Merge "Update release instructions wrt grenade" 2018-03-12 12:01:18 +00:00
Zuul
cc074dd600 Merge "Updated from global requirements" 2018-03-12 12:01:16 +00:00
Dmitry Tantsur
ac65ec6a6e Use more granular mocking in test_utils
oslo.config will start using the same functions that we mock in its
next release, breaking our assumptions on how many times they are
called.

Change-Id: Ief2c3d3089916e021cfef38f45f2cc2c78bc4f9b
Closes-Bug: #1754026
2018-03-12 12:32:38 +01:00
Zuul
9ecaa1bbcb Merge "Remove useless variable" 2018-03-12 06:23:05 +00:00
melissaml
9f912c0901 Update links in README
Change the outdated links to the latest links in README

Change-Id: Ib05c8fe8cfde3d3f04b7248aeb782d049412cc5c
2018-03-11 01:55:39 +08:00
OpenStack Proposal Bot
0ce6bce9e5 Updated from global requirements
Change-Id: I76719f244c1a5cf34afa0f8c967df231fc72792f
2018-03-10 13:15:06 +00:00
Zuul
2be6365f10 Merge "Update iLO documentation for deprecating classical drivers" 2018-03-10 09:58:43 +00:00
Zuul
180bfaf08c Merge "Register traits on nodes in devstack" 2018-03-10 09:58:39 +00:00
Zuul
fe6112103f Merge "Updates boot mode on the baremetal as per boot_mode" 2018-03-09 22:29:18 +00:00
Zuul
93e35da7e3 Merge "cleanup: Remove usage of some_dict.keys()" 2018-03-09 06:48:23 +00:00
Zuul
c68fa3cfde Merge "Make grenade-mulinode voting again" 2018-03-09 02:30:07 +00:00
jinxingfang
07e2dbd83b Remove useless variable
The headers variable is not used in this function, remove it.

Change-Id: If63f40ed389c08f5c9a16adfe0b596ef092bcf43
2018-03-08 09:53:38 +08:00
Zuul
eff18709ac Merge "Update docstring to agent client related codes" 2018-03-07 18:49:18 +00:00
Zuul
f3a846d2b6 Merge "Don't validate local_link_connection when port has client-id" 2018-03-07 16:30:58 +00:00
Zuul
e539101015 Merge "Fix issue with double mocking of utils.execute functions" 2018-03-07 12:26:52 +00:00
Moshe Levi
dcebb77d9d Don't validate local_link_connection when port has client-id
Infiniband ports do not require the local_link_connection field to be
populated as the network topology is discoverable by the Infiniband
Subnet Manager.

This change removes the requirement for local_link_connection for
Infiniband ports. Infiniband ports have a client-id in their extra
field.

Closes-Bug: #1753222
Change-Id: I2bfac4ccaf825bd9aa8ea0d2b447fcd7767acbc5
2018-03-06 15:37:39 +00:00
OpenStack Proposal Bot
cd3c0112bd Updated from global requirements
Change-Id: I7a742deaccd68682421233c68bd87e77b7336aa6
2018-03-06 12:47:06 +00:00
Zuul
3a0b56a59d Merge "reloads mutable config values on SIGHUP" 2018-03-06 07:15:20 +00:00
Kaifeng Wang
48d04b3abe Update docstring to agent client related codes
Agent client is not well documented with docstring, this patch updates
existing and adds missing docstring in the code.

Change-Id: Ic7ddc1a4454630a14550a82e803a2568cafc8969
Closes-Bug: #1368906
2018-03-05 14:36:45 +08:00
Zuul
4c24b9c9bd Merge "Move execution of 'tools/check-releasenotes.py' to pep8" 2018-03-02 14:16:27 +00:00
Zuul
9d284603a1 Merge "fix a typo in driver-property-response.json: s/doman/domain/" 2018-03-02 14:16:21 +00:00
Zuul
c3cddf8cf4 Merge "tox.ini: flake8: Remove I202 from ignore list" 2018-03-02 14:16:19 +00:00
John L. Villalovos
fabcf1a402 Move execution of 'tools/check-releasenotes.py' to pep8
The 'releasenotes' gate job does not run our tox section. This allowed a
releasenote to land that had a filename in an incorrect format because
it was not created with 'reno new'.

Move the running of 'tools/check-releasenotes.py' to the pep8 section
and whitelist the releasenote that got merged.

Change-Id: Id5bd8e0cbc9186c89f682224088a8f23998d59c3
2018-03-02 12:20:27 +00:00
Ruby Loo
398462021b reloads mutable config values on SIGHUP
This changes the ironic (ironic-api and ironic-conductor)
services so that when a SIGHUP signal is issued, the
service reloads (and uses) the values of mutable configuration
options.

The mutable configuration options (set by oslo.config Opts' mutable=True)
are:
- [DEFAULT]/pin_release_version
- [DEFAULT]/debug
- [DEFAULT]/log_config_append
and are indicated as such in ironic's sample config
(https://docs.openstack.org/ironic/latest/configuration/sample-config.html)
by "# Note: This option can be changed without restarting.".

Configuration options are mutable if their oslo.config Opt's mutable=True
is set. This mutable setting is respected when the oslo method
mutate_config_files is called instead of reload_config_files.
Icec3e664f3fe72614e373b2938e8dee53cf8bc5e allows services to tell
oslo.service they want mutate_config_files to be called by specifying the
'restart_method=mutate' parameter, which this patch does.

Change-Id: I0df46bb21dda035b25daad17737dbfedb861e868
Closes-Bug: #1585595
2018-02-28 23:46:30 +00:00
Vasyl Saienko
92f5dadd0f Make grenade-mulinode voting again
Change-Id: Iab5fc999fcfa427549192ec73bd076a588f37e20
Depends-On: I3b1429d6561431a82edda04a0e574cac38771837
2018-02-28 21:42:21 +00:00
John L. Villalovos
843c773573 tox.ini: flake8: Remove I202 from ignore list
Remove I202 (Additional newline in a group of imports) from the ignore
list. I202 is a check from the flake8-import-order [1] package.

There was a note to remove this check once the tempest plugin was
removed. As the tempest plugin has been removed we can now remove the
exclusion of this check.

Update files which failed this test.

[1] https://github.com/PyCQA/flake8-import-order

Change-Id: I6018d5a90174b3d4b6b8d8e05cee1c1104ccfde9
2018-02-26 09:00:42 -08:00
wangqi
c6f8d85852 fix a typo in driver-property-response.json: s/doman/domain/
Change-Id: I43fe909213c07f13b7e740c0bfa84ed5cef68cd1
2018-02-26 06:58:44 +00:00
zhangjl
46ee76aa46 Trivial: Remove the non ascii codes in tox.ini
Change-Id: I99fa32ac021c0951fba1d25236bab597073dd301
2018-02-26 06:03:07 +00:00
Mark Goddard
c8ae2457c7 Register traits on nodes in devstack
This change adds support for assiging traits to nodes in the ironic
devstack plugin.  The set of traits added is configured by
IRONIC_DEFAULT_TRAITS, which defaults to a single trait - CUSTOM_GOLD

Using nodes with traits during testing ensures that we are exercising
node traits code paths in the Ironic CI.

Node traits are not used for upgrade testing, as the queens devstack
plugin does not currently register traits. Once this change is
backported to queens, we can enable traits during upgrade testing.

Change-Id: I18b9dbf8a5b16e36e0cc14f290b12ffdd634364a
Related-Bug: #1722194
Related-Bug: #1750027
2018-02-23 18:59:11 +00:00
John L. Villalovos
1b8f69dfe0 Fix issue with double mocking of utils.execute functions
An issue was discovered if we mock an already mock-ed function. This
was happening in our execute() detection code. Change it to not use a
mock and instead a function.

Fix a failing unit test. This was due to the fact that using
'autospec=True' causes assert_not_called() to not work. This is a
known bug in the mock code[1].

Add test cases to ensure it works as expected.

[1] https://bugs.python.org/issue28380

Change-Id: Ifa18df61d17750f9a37118a2ac8aaf13005a5159
2018-02-23 05:44:59 -08:00
Zuul
486a6f961c Merge "[ansible] use manual-mgmt hw type in unit tests" 2018-02-23 02:38:51 +00:00
Zuul
03cd5ab5b6 Merge "Clean up CI playbooks" 2018-02-22 21:14:25 +00:00
Zuul
c8887167c4 Merge "Stop using --os-baremetal-api-version in devstack by default" 2018-02-22 20:58:36 +00:00
Zuul
e68d1a71b1 Merge "Set 'initrd' to 'rescue_ramdisk' for rescue with iPXE" 2018-02-22 11:48:46 +00:00
mallikarjuna.kolagatla
216ad852fa Updates boot mode on the baremetal as per boot_mode
This patch modifies the ilo drivers to use the
`boot_mode` capability for cleaning and update the
same on the baremetal.

Change-Id: I5b095cac47890e117866f0569f69148deff173b7
Closes-Bug: #1559835
2018-02-22 04:58:10 +00:00
Zuul
a935a3ec56 Merge "Support nested objects and object lists in as_dict" 2018-02-22 04:13:23 +00:00
Mark Goddard
c66679f14b Support nested objects and object lists in as_dict
The value returned by ironic.objects.IronicObject.as_dict() should be a
plain object, in order for it to be serialised to JSON. Currently,
nested object fields and object list fields are not converted to dict
format. This caused problems during cleaning, when the node object's
as_dict representation is JSON encoded and sent to IPA.

This change adds support for calling as_dict() on nested objects and
list objects, to ensure these are also returned in dict form.

We also change the method used in as_dict() for checking whether an
object has an attribute. The hasattr() function used previously has
problems when used with properties in python 2 [1], in that any
exceptions raised in the property getter result in hasattr() returning
False. Instead we use obj_attr_is_set() to determine whether the object
has a particular attribute.

[1] https://hynek.me/articles/hasattr/

Change-Id: Ib2166040508827db28d6f6e2d9a3e655c16f2993
Closes-Bug: #1750027
2018-02-22 00:29:58 +00:00
Zuul
55c6687cf2 Merge "Disable .pyc files for grenade multinode" 2018-02-22 00:18:58 +00:00
Zuul
a243d3591d Merge "Revert "Don't try to lock for vif detach"" 2018-02-22 00:08:05 +00:00
Zuul
59f932da14 Merge "Updated from global requirements" 2018-02-21 23:13:59 +00:00
Dmitry Tantsur
08ed859ce2 Revert "Don't try to lock for vif detach"
This is causing more serious issues, as there is a race
between tenant VIF removal and cleaning VIF adding.

This reverts commit 4f79cb3932f2518ab3f06b86ceea065cbb399e8c.

The release note is not deleted from it, because the change has
already been released. A new one is added instead.

Change-Id: I922f24293645ff6bb79ad753f49dc9548b9f2485
Closes-Bug: #1750785
2018-02-21 18:33:35 +01:00
Hironori Shiina
8f2e487b2b Set 'initrd' to 'rescue_ramdisk' for rescue with iPXE
The kernel paramter 'initrd' is hard-coded as 'deploy_ramdisk' in iPXE
config template. A rescue ramdisk may fail to boot due to this wrong
paramter. This patch sets this 'initrd' paramter properly to
'deploy_ramdisk' or 'rescue_ramdisk' by adding a new pxe option.

Change-Id: I8ad1223dc289bbe915ee4ca8db66c8f80bf08f15
Closes-Bug: 1749860
2018-02-21 17:39:12 +09:00
Nisha Agarwal
253c37792f Update iLO documentation for deprecating classical drivers
Change-Id: I3e66787839fda3d785ced0a9512793f77f7a23a4
2018-02-21 08:38:56 +00:00
Zuul
a97fa8e3ce Merge "Increase the instance_info column size to LONGTEXT on MySQL/MariaDB" 2018-02-20 22:19:54 +00:00
Zuul
303f073e89 Merge "Use oslo_db.sqlalchemy.test_fixtures" 2018-02-20 18:55:39 +00:00
Zuul
a938e9b07a Merge "Fix default object versioning for Rocky" 2018-02-20 18:55:37 +00:00
David Edery
8fdf752ae9 Increase the instance_info column size to LONGTEXT on MySQL/MariaDB
In MySQL, the maximum size of TEXT is 64KiB. The instance_info column
is defined as TEXT and can potentially hold big amount of data
(partly affected by cloud-init scripts for the node).

This patch-set resizes nodes.instance_info to LONGTEXT which allows up
to 4GiB of data to be stored in the column. This change is relevant only
to MySQL and does not affect PostgreSQL or any other DB flavor. The fix
also addresses the upgrade process of the column.

Change-Id: Ifb9a49d4258a559cf2175d902e9424a3f98065c5
Closes-Bug: #1596421
2018-02-20 09:22:30 -08:00