141 Commits

Author SHA1 Message Date
Riccardo Pittau
dd4110adc5 Upgrade pip if it's too old
We upgrade pip only if the version is too old to not support the
-c option.

Change-Id: I6e633debb2bf97f397a4b3d252c25e4a41992a8d
2020-02-19 14:10:16 +01:00
Zuul
dbfbe1f451 Merge "Add ntpdate/ntpclient/chrony" 2020-02-18 16:40:20 +00:00
Julia Kreger
789ebe1e95 Add ntpdate/ntpclient/chrony
Adds ntpdate to the binary package list for the diskimage-builder
element, and added ntpclient to the tinycore package list and added
a small shim to wrap ntpclient as ntpdate is not a native tinycore
package.

For larger ramdisks, we attempt to use chrony, which superceeds the ntp
package as a combined time server and client.

Change-Id: If99f2df31af8e4d41ad7813d25f0d779abc23f7a
Needed-By: https://review.opendev.org/#/c/707911/
2020-02-17 13:11:04 -08:00
Riccardo Pittau
531167c2d5 Upgrade to tinycore 10.x
Upgrading tinycore from version 9.x to 10.x
This change was merged [1] and reverted [2], let's give it another
try and eventually discuss about possible issues.

[1] https://review.opendev.org/688411
[2] https://review.opendev.org/698098

Change-Id: I831b414461f77c65e34b0f357763e38e74e65e29
2020-02-10 14:55:56 +01:00
Julia Kreger
ae327bb1ca Add extra filesystem support
Tinycore needs xfs support in order to be used in certian
low memory testing situtions with images that prefer
to use XFS as the filesystem.

Change-Id: Ief9c04a57c3e3249ddf081b249aa583169065582
2020-02-08 13:02:26 -08:00
Zuul
622949a698 Merge "Revert "Test artifact publishing via AFS"" 2020-02-07 08:40:55 +00:00
Zuul
f2c5f0c402 Merge "Test artifact publishing via AFS" 2020-02-06 10:12:00 +00:00
Ian Wienand
718857cc8b Revert "Test artifact publishing via AFS"
This reverts commit f81f8f58f4bd68daeb7c168a4e7f2eaa05d15919.

Testing is complete.

Change-Id: Ieab3e2e92a214b7d38a0e9afaec35d28c0d9c121
2020-01-31 17:37:44 +11:00
Ian Wienand
f854e34a15 Test artifact publishing via AFS
I'm requesting this job be temporarily merged for testing publishing
artifacts to an AFS volume instead of pushing it to a static server.
This is part of the efforts to retire our static.openstack.org server
and serve files from our distributed storage [1].

Because the publishing steps happen in the post phase using a secret
value in project-config to get the kerberos ticket for writing to AFS,
we have to commit changes to really test them.

This repository is a good user of the artifact upload process and a
good target for testing the changes on just one repository.

This adds a job ironic-python-agent-build-image-tinyipa-publish-to-afs
which is ultimately parented to the new
publish-openstack-artifacts-with-afs from project-config.  The only
difference is that this will upload the output to AFS, where I will
check that everything copied as expected.  We can then revert this.

Ultimately we will change the publish-openstack-artifacts job in
project-config -- this will be transparent to end-users such as this
repository as we will be switching tarballs.openstack.org to use this
at the same time.

Depends-On: https://review.opendev.org/705159
[1] https://docs.opendev.org/opendev/infra-specs/latest/specs/retire-static.html

Change-Id: Ib2ae8c2d9f59695ce7af5414f73e1f4bcc7ae462
2020-01-31 17:37:41 +11:00
Riccardo Pittau
46c78a10c1 Use correct command for Python virtualenv
Using the virtualenv command will generate a virtualenv with the
default python exec for the entire system, that means that even
if DIB_PYTHON is python3, the virtualenv will use python2.
With this change we use the venv embedded command if the version
of Python is 3.x to generate a virtualenv with the correct
Python 3 version.

Change-Id: I8bec32c5e0dae2dee27615146f946a9649f23fd1
2020-01-30 12:12:44 +01:00
Riccardo Pittau
22a12a3a41 Fix pip install pkgs with non-ascii characters in filenames
As found recently, pip with Python 3.6 and forward has some issues
installing tarballs that contain files with non-ascii characters
in their names.
This is due mainly to the fact that the default locale in the
system is set to C [1].
As a workaround, we run the installation of the packages in the
virtualenv forcing C.UTF-8 locale.

[1] https://github.com/pypa/pip/issues/7667

Change-Id: Idfb8b121a43a0bb74844fd63d5c2507d7b888b15
2020-01-30 12:07:32 +01:00
Zuul
3abd1459bb Merge "DIB: replace targetcli with target-restore on RHEL/CentOS 8" 2020-01-21 17:51:21 +00:00
Dmitry Tantsur
683feac160 Fix and return the CentOS 7 job
This job is used on stable branches and is currently broken. This
change introduces a workaround for older DIB and re-enables the job.

Change-Id: I100576c639649a69a8e95463ca87bedda4bbadc3
2020-01-20 16:08:56 +01:00
Dmitry Tantsur
79f597e183 Start installing DIB from Zuul-cloned sources in the CI
We need to be able to pick up fixes quicker than now and to use
depends-on with DIB changes. This change achieves it.

Change-Id: Ic6ab011370b08d06a5c914736949ead2cb498e56
2020-01-20 15:19:32 +01:00
Zuul
d0b88f186e Merge "Add efivar" 2020-01-14 00:14:54 +00:00
Dmitry Tantsur
07cdd87bed DIB: replace targetcli with target-restore on RHEL/CentOS 8
These systems use LIO via python-rtslib, and targetcli depends
on libX11 and other GUI packages. The target-restore package
(coming from python-rtslib) is enough to create the necessary
directories (e.g. /etc/target).

Change-Id: Ide0d23d3834c52edcbc569c05ce95ba78e1bf73d
2020-01-10 17:25:39 +01:00
Dmitry Tantsur
60875730fd CI: add a non-voting partition-iscsi DIB job
Change-Id: I387a95c1d5fa51ee861cdbb1a1d24f447d1c031d
Depends-On: https://review.opendev.org/701950
2020-01-10 13:55:46 +01:00
Zuul
19dccd5d66 Merge "Convert versions for software builds to variables" 2020-01-10 04:03:36 +00:00
Iury Gregory Melo Ferreira
15ec23f7e2 Add efivar
The efivar package is required when doing uefi boot.

Change-Id: Id736787bb3d6f971a9f0f26732af1c2d66151f0d
2020-01-07 15:46:33 +01:00
Zuul
5bdd94999e Merge "Upgrade syslinux version" 2020-01-03 03:34:28 +00:00
Zuul
27c91658d7 Merge "Use variables for syslinux in build-iso script" 2020-01-03 03:34:27 +00:00
Zuul
9388d664cb Merge "Replace CentOS 7 images with CentOS 8" 2020-01-02 14:04:14 +00:00
Dmitry Tantsur
3c78c29e94 Replace CentOS 7 images with CentOS 8
CentOS 7 uses Python 2. Although it's possible to install Python 3
on it, it not trivial with DIB. We should rather switch to
a distribution where Python 3 is the default version.

As a nice side effect, the CentOS 8 images seem smaller.

The CentOS 7 job definitions are kept around since they're used
on stable/train.

Change-Id: I6b23da21eab19c69f7b070adff76b35e1752bf8d
2019-12-26 12:37:59 +01:00
Julia Kreger
e28167a8f5 Be a bit more verbose around tinyipa for rescue
Seems we have no real way to grok if there was a rescue setup failure
because we don't log any information to the console about the node
once dhcp has occured.

As such, added an additional line of text to be logged and added
the ip addr command which should save a list of addresses by
interface to the console to assist in CI job troubleshooting.

Change-Id: Ib3f6e24d0687e9da8e551355fe04faf3f86ff582
2019-12-17 06:24:10 -08:00
Madhuri Kumari
a6c0f2ce63 Fix the binary name in document
Change-Id: Ic64b2129767ae0ef114fddcecbbf574aa1203bf0
2019-12-12 11:35:46 +05:30
Zuul
73fbda5477 Merge "Add efibootmgr" 2019-12-11 11:57:50 +00:00
Zuul
f10a39c934 Merge "Update tinycore mirrors" 2019-12-10 09:31:32 +00:00
Zuul
61985939fa Merge "Revert "Update tinycore from 9.x to 10.x"" 2019-12-10 01:01:28 +00:00
Julia Kreger
d6aeb03b47 Revert "Update tinycore from 9.x to 10.x"
This reverts commit e8c8a9f76b81081cd366ac872a400fc8f934ef0c.

Change-Id: I9bb95f611460b0a1e657a79a1f4d02e0c1d4a291
2019-12-09 21:54:04 +00:00
Julia Kreger
55d0a24176 Update tinycore mirrors
Update mirrors since some were out of date.

Change-Id: I0086888839f59aa0d86ae7acb9f08aedafab2bd2
2019-12-09 13:19:43 -08:00
Iury Gregory Melo Ferreira
e564be1905 Add efibootmgr
We will be using efibootmgr on ipa so let's add
to the ipa-builder so the ramdisk will have it.

Change-Id: Ic3b3f65715719b31f7e94d14504be9705ab4ba0e
2019-12-09 16:08:31 +01:00
Riccardo Pittau
021fe13239 Upgrade syslinux version
Latest version of syslinux is 6.03

Change-Id: Ibf9da9e0fe1f4411f045c832613dee7979e8bb01
2019-12-09 15:30:12 +01:00
Riccardo Pittau
0064cae136 Convert versions for software builds to variables
This patch converts the versions of the custom dependencies builds
to variables.
Includes:
tgt
qemu
lshq
biosdevname
ipmitool

Change-Id: I516256624b6ec12329dc02b185701b287897954d
2019-12-06 13:22:26 +01:00
Riccardo Pittau
a44f84aeef Use variables for syslinux in build-iso script
Converting syslinux related version and download path to variables.

Change-Id: I54f0c027961f3ea46777cc0829ad80781e06c031
2019-12-06 10:46:00 +01:00
Kaifeng Wang
0916598653 Add words on building image for other architecture
Change-Id: I2ca2a574ba84f44dfbfa197d80c14ac0e4c59de2
2019-12-05 10:20:10 +08:00
Zuul
a34dfda613 Merge "Update tinycore from 9.x to 10.x" 2019-12-02 21:59:59 +00:00
Madhuri Kumari
55aaf172b1 Drop python 2.7 support and testing
OpenStack is dropping the py2.7 support in ussuri cycle.

ironic-python-agent-builder is ready with python 3 and ok to drop
the python 2.7 support.

Complete discussion & schedule can be found in
- http://lists.openstack.org/pipermail/openstack-discuss/2019-October/010142.html
- https://etherpad.openstack.org/p/drop-python2-support

Ussuri Communtiy-wide goal - https://review.opendev.org/#/c/691178/

Change-Id: I4dc5fe4cbb2ec4e604e18f77da4b5723ab7f9c2b
2019-11-23 18:39:21 +05:30
Pierre Riteau
fc070c691e Fix IPA execution issues due to lack of entropy
While running TinyIPA stable/stein images in KVM virtual machines with
Tenks, we noticed that IPA would start but not execute further, which
appeared to be caused by a lack of entropy.

This patch installs haveged, a simple entropy daemon [1], into the
tinyipa ramdisk and starts it on boot, which resolves the issue.

While this problem was reproduced reliably with stable/stein and not
seen with stable/train or stable/rocky images, we will start running
haveged in all versions, for consistency. It adds less than 20 KiB to
the ramdisk.

[1] http://www.issihosts.com/haveged/

Change-Id: I7d47b7828733cc03c1ed6c370c451465a6d492b6
Story: 2006911
Task: 37554
2019-11-21 15:35:35 +01:00
Julia Kreger
e8c8a9f76b Update tinycore from 9.x to 10.x
Change-Id: I14a44700df8c7acc524bd4c410d60b56cc79f67e
Co-Authored-By: Dmitry Tantsur <dtantsur@redhat.com>
2019-11-19 12:53:44 +00:00
Dmitry Tantsur
86f9d22592 Generate checksums for DIB images
Change-Id: If8c0cdab5c443f7533873eef0d79673760bfa51b
2019-11-18 16:59:20 +01:00
Zuul
f9ec4c5d16 Merge "CLI: add --verbose and --extra-args" 1.1.0 2019-10-31 20:11:25 +00:00
Dmitry Tantsur
28d7cdd05a tinyIPA: raise udevadm settle timeout
We're hitting this timeout in the CI, so let's make it a bit bigger.

Change-Id: Iee915dffc19377ec285e242c5b7000770a69cf6d
2019-10-29 16:56:30 +01:00
Zuul
51f53ab943 Merge "DIB: add --branch argument to override IPA branch" 2019-10-29 10:58:55 +00:00
Zuul
74e00b7021 Merge "Clone and checkout is not needed anymore" 2019-10-26 09:25:44 +00:00
Zuul
44f46a3ccd Merge "Blacklist sphinx 2.1.0 (autodoc bug)" 2019-10-25 16:39:00 +00:00
Zuul
6fcc8dab8b Merge "Revert "Temporary raise diskimage-builder to the latest version"" 2019-10-24 09:05:12 +00:00
Dmitry Tantsur
07d27a573e CLI: add --verbose and --extra-args
The --extra-args argument allows passing arbitrary arguments to DIB.

Change-Id: I26be362263c08ea5cfe3bd265372ff5ab406d85c
2019-10-23 16:10:04 +02:00
Dmitry Tantsur
f6bf7b97d5 DIB: add --branch argument to override IPA branch
Change-Id: I6954342e4c2d3936cdea415838849c31c84b77ac
2019-10-18 12:49:57 +02:00
Dmitry Tantsur
19f046112d Update upper-constraints handling
For tinyIPA, migrate the generate_upper_constraints script in-tree.

For DIB, use a source repository with requirements to fetch
upper-constraints. As a nice side effect, it allows depending on
requirements patches in the CI.

Change-Id: I6be51b98adab641cfaa1613306cbdcc3b42de1c2
2019-10-18 12:49:28 +02:00
Zuul
37f09a567b Merge "Allow extra python pakgs into tinyipa" 2019-10-18 07:45:43 +00:00