cc0733c34801dd559a24a22c15f99ff31ae9d359
1051 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
Ruby Loo
|
cc0733c348 |
Remove unused SUPPORTED_ROOT_DEVICE_HINTS
utils.SUPPORTED_ROOT_DEVICE_HINTS is no longer being used so
delete it. (The method that used it was removed in
|
||
|
OpenStack Proposal Bot
|
01d49886ac |
Updated from global requirements
Change-Id: I5ef758226b5c5f5e61988bf49515ec94bc002522 |
||
|
Jenkins
|
64e813ee67 | Merge "Get root device hints from the node object" | ||
|
Lucas Alvares Gomes
|
33535cd572 |
Get root device hints from the node object
In order to support a more complex syntax for root device hints (e.g operators: greater than, less than, in, etc...) we need to stop relying on the kernel command line for passing the root device hints. This patch changes this approach by getting the root device hints from a cached node object that was set in the hardware module. Two new functions: "cache_node" and "get_cached_node" were added to the hardware module. The idea is to facilitate the access to a node object representation from the hardware extension methods without changing method signatures, which would break compatibility with out-of-tree hardware managers. Note that the new "get_cached_node" is just a guard function to facilitate the tests for the code. The function parse_root_device_hints() and its tests were removed since it's not used/needed anymore. Partial-Bug: #1561137 Change-Id: I830fe7da1a59b46e348213b6f451c2ee55f6008c |
||
|
Mathieu Mitchell
|
f412b931cb |
Remove links to github for OpenStack things
Github is not the official reference for OpenStack code repositories, and as such should not be used in documentation. Update links that are meant to be links to a project as a whole with links to the project's documentation. Update links directly to code to git.openstack.org. This change follows Iee09b6b86628e46dc5e9436bd0f98a40c50244b7 Change-Id: I6c0ba75c1ba04916413847cce56441ff4670bd62 |
||
|
Jenkins
|
be548fe5e0 | Merge "Add a configurable sleep before IPA starts working" | ||
|
Jenkins
|
962ee1afb5 | Merge "Wait for at least one suitable disk to appear on start up" | ||
|
Jenkins
|
ced9a754dd | Merge "Use constraints for all the things" | ||
|
Dmitry Tantsur
|
c09753bb60 |
Add a configurable sleep before IPA starts working
Some kernel modules take substantial time to initialize. For example, with mpt2sas RAID driver inspection and deployment randomly fail due to IPA starting before the driver finishes initialization. As much as I hate it, the only way to guarantee that the hardware is truely initalized is to wait for it. Apparently all hardware in Linux is treated as hotplugged, so there is no such thing as "hardware initialization is finished". Operators can add a sleep based on their knowledge of their hardware. The default behaviour remains the same. Change-Id: I0446ae81d760dacaf31eea6ad9f9eaa098cf5e93 Partial-Bug: #1582797 |
||
|
Dmitry Tantsur
|
c15ed6a48e |
Wait for at least one suitable disk to appear on start up
Some kernel modules take substantial time to initialize. For example, with mpt2sas RAID driver inspection and deployment randomly fail due to IPA starting before the driver finishes initialization. This problem is probably impossible to solve in a generic case, as modern Linux environment do not have a notion of "hardware is fully initialized" moment. All hardware is essentially hotplug. To solve it at least for the simplest case, this patch adds a wait loop on start up waiting for at least one suitable disk to appear in inventory. Note that root device hints are not considered, as the node might not be known at that moment yet. Change-Id: Id163ca28f7c140c302ea04947ded3f3c58b284de Partial-Bug: #1582797 |
||
|
OpenStack Proposal Bot
|
015fad6054 |
Updated from global requirements
Change-Id: Ieb49ed0533a3c766e3ec2ce9da67077a25609a4f |
||
|
Jenkins
|
b584bb4ddc | Merge "Revert "Add hardware manager interface for hardware initialization"" | ||
|
Jay Faulkner
|
5a1a1ca61c |
Revert "Add hardware manager interface for hardware initialization"
I would've voted -1 on the patch in question had I reviewed it, and per
standard OpenStack/Ironic procedure, I'm reverting it for re-review and
discussion.
In this case; I don't think the new method in the HWM interface is
needed, and that evaluate_hardware_support() is intended to handle the
cases handled.
This reverts commit
|
||
|
Jenkins
|
c688b98917 | Merge "Add hardware manager interface for hardware initialization" | ||
|
Dmitry Tantsur
|
0962cae1da |
Add hardware manager interface for hardware initialization
Some kernel modules take substantial time to initialize. For example, with mpt2sas RAID driver inspection and deployment randomly fail due to IPA starting before the driver finishes initialization. Add a new hardware manager method initialize_hardware, which gets run on start up before other hardware manager method invocations. The generic implementation is to call udev settle and wait for at least one suitable disk device to appear with the hardcoded timeout of 15 seconds. Also preload the IPMI modules instead of calling modprobe every time the inventory is requested. Change-Id: If7758bb6e3faac7d05451baa3a26adb8ab9953d5 Partial-Bug: #1582797 |
||
|
Jim Rollenhagen
|
4e35b0ee64 |
Use constraints for all the things
This configures tox to use upper-constraints for everything, except environments used for post jobs (as constraints aren't supported there yet). This also doesn't enable constraints for our image builds, as it isn't possible to pass an environment variable into the Dockerfile to allow folks to choose their own constraints file (and we don't want to force people to rely on git.o.o for building images). Change-Id: I285855c6386f59e9dd352473aa28463109818c90 |
||
|
OpenStack Proposal Bot
|
bb0b0a972e |
Updated from global requirements
Change-Id: Iec5287f6167434e3475a54d0776d150dd13d391e |
||
|
Jenkins
|
86ca19fae2 | Merge "Prevent failure on 'copy_configdrive_to_disk.sh'" | ||
|
Ricardo Araújo Santos
|
a90ee859a2 |
Prevent failure on 'copy_configdrive_to_disk.sh'
The script splits 'sfdisk' output wrongly in blank spaces leading to failures when partition id is greater than 10, e.g.: "/dev/sda10: start= ...". This fix splits the output on ":" and trims trailing space when partition id is less than 10, e.g.: "/dev/sda1 : start= ...". Change-Id: I23f4b747fc0a86713cb912afc5d193398e6a597b Closes-Bug: 1581699 |
||
|
Jenkins
|
89f4f33128 | Merge "TinyIPA: Ensure that kernel modules are loaded at boot" | ||
|
Sam Betts
|
70d0356628 |
TinyIPA: Ensure that kernel modules are loaded at boot
Installing packages into a chroot was not something tce-load was ever designed for, because of this it gets a little confused about loading kernel modules when we install them. This patch manually calls depmod to ensure that the kernel modules we install during the build process get loaded when we boot the ramdisk. Change-Id: I940d11f3f9f2a39cba16e121dc1809a42690d350 |
||
|
Jenkins
|
e4e4355a63 | Merge "Make TinyCore mirror configurable" | ||
|
Sam Betts
|
83ab1bc7dd |
Make sure tinyipa du takes into account branch
Change-Id: Idc8092f4cce2a567353b1e70e8f56813471a6dbb |
||
|
Jim Rollenhagen
|
085e622945 |
tinyipa: add popt to deps
This is a dep of gdisk, however the gdisk deps file was removed upstream. Add this back manually for now. Change-Id: Ib2beb8688a22873fd39653d26571ceb0fb70447d |
||
|
Mathieu Mitchell
|
a8fafba06e |
Make TinyCore mirror configurable
This makes the TinyCoreLinux build mirror configurable, and makes the default the official repository, http://repo.tinycorelinux.net/. This mirror consistently tested 15% faster than using ibiblio.org for all tasks. Additionally, ensure it is used throughout the build process. This will allow us to point to an infra-controlled mirror down the road [1]. [1] http://lists.openstack.org/pipermail/openstack-infra/2016-May/004277.html Change-Id: I03c98517e2e8aa08e18e059c3fe84b7cdef1a3a2 |
||
|
Jenkins
|
189827e2b2 | Merge "Remove "Experimental" warning from tinyipa README" | ||
|
Jenkins
|
ca3ab1b354 | Merge "TinyIPA: Shave off some file size from tinyipa ramdisk" | ||
|
Jenkins
|
ef9f461891 | Merge "TinyIPA: Precompile python code for faster load" | ||
|
Jenkins
|
efefe98546 | Merge "Use TinyCore Linux 7.x for TinyIPA" | ||
|
Sam Betts
|
6633cbb7d6 |
TinyIPA: Shave off some file size from tinyipa ramdisk
This patch aims to reduce the TinyIPA ramdisk file size by removing some files that aren't required to run IPA once built and also striping the binaries we build for qemu-utils and tgt to make them as small as possible. Change-Id: I6b8d648800284444d67a6988511707e57de1e6c9 |
||
|
Sam Betts
|
f58f7b9a07 |
TinyIPA: Precompile python code for faster load
This patch adds code into the tinyipa build process and IPA itself to allow the required python code to be PYTHONOPTIMIZE precompiled into pyo files, this speeds up IPA startup time in a nested virt by 50%. Change-Id: Ib60c420719ea52a602c1752b572d3b217c2cefc7 |
||
|
Mathieu Mitchell
|
7274e2ee81 |
Use TinyCore Linux 7.x for TinyIPA
Bump to the latest version mainly to get the slimmed down gdisk [1]. Additionally, ensure /dev/pts is mounted in the chroot to avoid make from segfaulting when ttyname fails [2]. This only affects interactive mode. [1]: http://forum.tinycorelinux.net/index.php/topic,19951.0.html [2]: http://patches.openembedded.org/patch/117921/ Change-Id: If752cd9ed561a571c9690eb7390c3ee3910b09e0 |
||
|
OpenStack Proposal Bot
|
16e8d07434 |
Updated from global requirements
Change-Id: If7cb8d604c0b000e5410c1fa29911cdaf25e7005 |
||
|
Sam Betts
|
bfe334a3db |
Remove "Experimental" warning from tinyipa README
Change-Id: I81d2b52f7a5733a833fec9fcce0667f9f4bf5620 |
||
|
Jenkins
|
ec69fc5465 | Merge "Remove oslo.i18n" | ||
|
Dmitry Tantsur
|
6da6ace384 |
[inspection] wait for the PXE DHCP by default and remove the carrier check
We hoped that checking /sys/class/net/XXX/carrier will allow us to not wait for interfaces that are not connected at all. In reality this field turned out to be unreliable. For example, it is also set to 0 when interface is down or is being configured. The bug https://bugzilla.redhat.com/show_bug.cgi?id=1327255 shows the case when carrier is 0 for all interfaces, including one that is used to post back data, which is obvious non-sense. This change removes check on carrier for the loop. To avoid 60 seconds wait for people with several NIC's, it's changed to only wait for the PXE booting NIC, which obviously must get an IP address. This makes IP addresses in the inspection data for other NIC's somewhat unreliable. A new option inspection_dhcp_all_interfaces is introduced to allow waiting for all NIC's to get IP addresses. This change should finally fix bug 1564954. Change-Id: I8b04bf726980fdcf6bd536c6bb28e30ac50658fb Related-Bug: #1564954 |
||
|
Jim Rollenhagen
|
deda563a59 |
Remove oslo.i18n
This isn't used anywhere, don't install it. Change-Id: Ied76a695d2b313904d16aa50773105f7e925212b |
||
|
John L. Villalovos
|
4be5e08408 |
Stop using git:// and be nice to people behind proxy servers
The build of tinyipa is doing a: git clone git://... Doing a git clone git://... behind a proxy server is painful. Use the 'official' QEMU github mirror and clone with https. Change-Id: Ia14835e6867b945cccb8b1987aa4881d8524561c Closes-Bug: #1578778 |
||
|
Sam Betts
|
046994a04f |
Optimise tinyipa boot time
This patch reduces tinyipa boot time significantly by preinstalling all required system packages at build time instead of the traditional tinycorelinux method of loading them at runtime, cutting many seconds of unpacking squashfs files out of the boot procedure. Change-Id: If10cb64ea6b64972df0cdbd1056d84f136fec94a |
||
|
OpenStack Proposal Bot
|
062c6bfd31 |
Updated from global requirements
Change-Id: I521bcfcf4aa0e2aedc27a6ce80e4791ce7023dba |
||
|
Jenkins
|
2a3b601ed8 | Merge "Updated from global requirements" | ||
|
Jenkins
|
f5f34a501b | Merge "Allow shred zeroize option to be configured" | ||
|
OpenStack Proposal Bot
|
5545c0c644 |
Updated from global requirements
Change-Id: I0e55bc2d3e9fd7b4612c0ce6ad05d0d9a43df9a7 |
||
|
Jenkins
|
ffd91da667 | Merge "Make "make coreos" output moveable without sudo" | ||
|
Jay Faulkner
|
407a91c369 |
Force container builds to use http.us.debian.org
httpredir has multiple mirrors behind it, meaning on any given build we're relying on several mirrors to all stay up at the same time. This happens much less often than we'd like. By forcing this to http.us.debian.org, we're using a more curated set of mirrors which are less likely to be flakey. The long term fix is to use a debian mirror provided by infra for check/gate builds, but until that exists this should help. Depends-on: I5169faf25c36cfb494c9c1fafb14fb4f7f82cd9e Related-bug: #1571829 Change-Id: Ia7ea8d909df9ae86a6dbd68ba94746b171535eb8 |
||
|
Mathieu Mitchell
|
1c9ecbd8cb |
Allow shred zeroize option to be configured
Introduce a new parameter in driver_internal_info called agent_erase_devices_zeroize to control the behavior of shred. This parameter controls the --zero argument used when invoking shred. Configuring this to false disabled the last pass of zeroes, leaving the device with random data. Change-Id: I7053034f5b5bc6737b535ee601e6fb71284d4a83 Partial-bug: #1568811 Depends-On: Ia7ea8d909df9ae86a6dbd68ba94746b171535eb8 |
||
|
Sam Betts
|
02e73386cc |
Make "make coreos" output moveable without sudo
The build_coreos_image.sh script outputs files owned by root because it runs the make coreos, using sudo. This patch adds a couple of lines in that script to ensure that the files created are useable without having to use sudo after the script is finished. ** The coreos build post job requires this change ** Change-Id: Id462ac350940bd70b40e5ca76521ecf3e652f0e0 |
||
|
Jenkins
|
8ce07c88be | Merge "Install qemu-image from backports repo" | ||
|
vsaienko
|
52066d0a49 |
Install qemu-image from backports repo
qemu-image has been installed from testing to fix issues when qemu-img can't convert image: qemu-img: error writing zeroes at sector 0: Invalid argument The issue has been fixed in qemu 2.2.0-rc2, reference [0]. Which has been added to debian backports. This patch fixes issue with building coreos image, when qemu-utils can't be installed from testing due to dependency problems. Reference: [0] http://git.qemu-project.org/?p=qemu.git;a=commitdiff;h=f3a9cfddae [1] https://bugs.launchpad.net/cinder/+bug/1389728 Change-Id: Ie62a88e1d012aba1392b19c18137529c4c3ebf31 Related-Bug: #1490086 Closes-bug: #1570090 Closes-Bug: #1569835 |
||
|
Jenkins
|
cb604fbe7e | Merge "Create helper function: create_hdparm_info()" |