Age | Commit message (Collapse) | Author | Files | Lines |
|
Upstart scripts by default do not run scripts in a shell which results
in limits from `/etc/security/limits.conf` not be taken into account
and results in the default value (4096) to be taken. This may prove
problematic for OpenDaylight during initialization. On Cavium ThunderX
we have noticed OpenFlow controller initialization failures caused by
hitting this limit.
OPNFV is increasing the `nofile` limit to 112640 for OpenStack services
which is why I'm using this value here.
Bug report filed to Fuel@OPNFV (see [1]).
[1] https://jira.opnfv.org/browse/FUEL-140
Signed-off-by: Stanislaw Kardach <stanislaw.kardach@cavium.com>
|
|
|
|
|
|
While we're at it, fix default setting for net.ifnames in arm64
fixture.
Also, renumber some patches to eliminate duplicate prefixes
resulted from parallel development of patch sets.
Change-Id: Ibd8cc1f6f8916ad79527f2060a1a2725d557b2c2
|
|
Previously, rtc-efi module was blacklisted in fuel-library preseed
cobbler template, which is not used for Ubuntu target nodes.
Fix by instead blacklisting rtc-efi in cloud-init jinja2 template.
Change-Id: I325f8d1f411f51d494df7c738f1933445d996ff6
|
|
|
|
Since `execute_shell_command` mcagent is used for building the target
image and the timeout provided in the astute task is just respected on
the Astute level (on mcollective level this timeout is actually a
minumum between value provided and ddl value) we need to increase it
for Armband operation.
Because Armband builds the target image via `qemu-debootstrap`, it can
take more than 1 hour to finish the building. Therefore aside of
increasing the timeout in the Astute task, the maximum timeout value
for mcagent has to be increased.
Change-Id: Iab94e794e36bb7e887e8f334daa46e82fe0c6f94
Signed-off-by: Stanislaw Kardach <stanislaw.kardach@caviumnetworks.com>
|
|
|
|
|
|
Some PODs might need to increase the default timeout value.
The patch introduces the -T flag to Fuel's deploy script, that
can be used to set the timeout. If the flag is not given, it
will look into the DEPLOY_TIMEOUT environment variable and use
that value instead, otherwise the default vaule in deploy.py
will be used.
Change-Id: I835473190673dd8646d0da48c2dbd3bb5e13046d
Signed-off-by: Josep Puigdemont <josep.puigdemont@enea.com>
|
|
Since on AArch64, Ubuntu local mirror lacks arm64 packages (see [1]),
Fuel master requires internet connectivity during deploy, and hence
a way to setup such a public (extra) interface automatically.
Previous commit "transplant: Generate extra interfaces config file"
introduced support for passing this information via DEA (override),
which may define a IFCGF_<interface> section in its 'fuel:'
section, containing the necessary keys to produce a ifcfg-<interface>
file, like in this example:
fuel:
IFCFG_ETH1:
device: eth1
ipaddress: 10.0.1.10
netmask: 255.255.255.0
gateway: 10.0.1.254
In order for Network Manager to use the newly added interfaces
for outgoing traffic and honor their GATEWAY setting (e.g. if we just
added one public interface), the default route on admin iface (most of
the time called eth0) is disabled when extra interfaces are present.
FIXME: Only supports lowercase interface names, but so does Fuel,
see related bug report [2].
[1] https://jira.opnfv.org/browse/ARMBAND-35
[2] https://jira.opnfv.org/browse/FUEL-136
Change-Id: Idd6fe95a5a73ec172eca17cfd96f23b1a1bc2bee
Signed-off-by: Alexandu Avadanii <alexandru.avadanii@enea.com>
Signed-off-by: Josep Puigdemont <josep.puigdemont@enea.com>
|
|
While building for a different architecture (e.g. AArch64 on x86_64),
the bootstrap/target image build may take longer, due to latency
introduced by using qemu-user-static.
Change-Id: I2b57aae73ccc172fea9e53867bcb66e2f950498f
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
|
|
OPNFV ISO build uses fuel-mirror to create a local Ubuntu
partial mirror in nailgun.
Work around temporary mirror issue (e.g. during rsync) by
retrying mirror build up to 10 times.
Change-Id: I8afb0f55b08c1680903a09e07ac96b4d29415ed5
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
|
|
These are a collection of patches that adapt the current Fuel deploy
scripts for mainly two purposes:
- Make it possible to create a Fuel VM on a remote libvirt server.
We use the LIBVIRT_DEFAULT_URI environment variable to detect that.
Local deploys are possible by setting this variable to
'quemu:///system', or leaving it empty.
See: https://libvirt.org/remote.html for more details.
- Make it possible to add additional network interfaces. For this we
allow the user to pass the "-b bridge" paramter several times, and
creating a new virtual NIC for each of them, in the same order they
were given.
This required a bit of refactoring of the code.
None of the changes above should break backwards compatibility, except
when indicated in the commit (search for CHANGE in the log)
In addition there are some updates to the code that were deemed
necessary, like the ability to retry when executing shell commands
instead of directly failing, and a simplification of the DHA IPMI
adapter.
Change-Id: I8a0cd5b8672383decd861309328137971eaed14b
Signed-off-by: Josep Puigdemont <josep.puigdemont@enea.com>
|
|
Change-Id: Ia4123727913aa401d26cbe1028f30b20b4497961
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
|
|
Since we only build ODL plugin on arm64 for now, kill
fuel-plugin-qemu submodule in armband repo.
Change-Id: Ib7a6dfe7e1dbd03771e3f28d2769d54659280901
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
|
|
Commit 69fd98a broke the cobbler yum config, because instead of
re-adding only mos and nailgun repos with file:/// handler, it
kept the docker-specific repo config from ISO build.
Change-Id: I910fe639116a7ea8cb768c0371af0a84b471d0a4
|
|
cobbler-grub-aarch64 (arm64 specific loader) is currently
distributed and added to the cobbler docker container during
ISO build using EXTRA_RPM_REPOS envvar mechanism.
However, since this package installs files in a mounted location,
its contents are not persistent, requiring a test and eventual
forced reinstall during container start.
This, of course, requires the package to be available at that point,
which is not currently possible, as we remove the extra RPM repository
entry from yum config at the end of container build.
Hacky temporary workaround:
Keep extra RPM yum config after container is set up, only for cobbler.
TODO: This patch should be dropped once cobbler-grub-aarch64 RPM
package gets upstreamed.
Change-Id: I58e39df2671d79125c68a5ec994db962c103ce01
|
|
Currently, Ubuntu Trusty provides a broken python-debian package,
that fails to parse foreign architecture (package:any) relationships.
Purge debian package and let pip resolve this dependency, using a
newer version from pypi.
[1] http://lists.alioth.debian.org/pipermail/
pkg-python-debian-maint/2014-July/001795.html
Change-Id: Iba8f6cb52ad0a92e5d8d2bee4fb066b213991a94
|
|
Drop p/fuel-main/0003-Make-cpio-accept-symlinks.patch,
since this is now covered by OPNFV commit f544e41,
"Correction due to changed cpio behavior".
For details, see https://jira.opnfv.org/browse/FUEL-125
Change-Id: I6c04e34cb7a5af5681745f1cdd026809c65720ce
|
|
Currently we're close to 40 minutes of image building (thanks to
qemu-debootstrap). If network connectivity is a bit slow (happened to
me) it's easy to go over 1h limit. Therefore let's push this to 2 hours
to be safer.
Signed-off-by: Stanislaw Kardach <stanislaw.kardach@caviumnetworks.com>
|
|
On some arm64 platforms xtrabackup is broken due to an outdated
MySQL/InnoDB code that it uses which is missing. To work around that
this patch allows choosing which WSREP SST provider to use. Aside of
already supported `xtrabackup-v2` and `mysqldump`, the `rsync` method
has been added as it is comparable to xtrabackup in terms of speed (or
is faster), has been validated to work on arm64 platforms where
xtrabackup is broken and it doesn't rely on db mechanisms to perform the
state transfer.
This patch is tied to a patch in fuel-web that introduces configuration
options for WSREP SST provider and in case nothing is specified, it
will choose `xtrabackup-v2`.
Signed-off-by: Stanislaw Kardach <stanislaw.kardach@caviumnetworks.com>
|
|
|
|
|
|
|
|
Upstream mirrors use a custom version of libvirt, ported from
Debian, while keeping the Ubuntu ceilometer package, leading to a
libvirt group name mismatch between the two.
Fuel-library hardcodes a deb-version test for libvirt-bin, which
enforces the use of "libvirt" instead of "libvirtd" for 1.2.9 or
newer libvirt-bin [1].
Armband brings its own 1.3.2 libvirt-bin package, which respects
Ubuntu standard group naming ("libvirtd"), but since 1.3.2 > 1.2.9,
the old group name ("libvirt") is still used.
This patch extends the version checking introduced in [1]:
- libvirt-bin 1.3.2 or newer will use "libvirtd" naming;
- libvirt-bin 1.2.9 ... <1.3.2 will use "libvirt".
[1] https://review.openstack.org/#/c/200602/8/deployment/puppet/
openstack/manifests/ceilometer.pp
Change-Id: I11861e1863d7971a844c62dc08f22dbbab63b3e1
|
|
Adding another RPM repo also requires updating ks.cfg{.orig,} in
OPNFV fuel repository.
Update TODO by removing obsolete entries.
Also fix minor unrelated patch whitespace error.
Change-Id: I6a7f271d32c5d9c58aa48658e90e1cdbb0d59fdc
|
|
fuel-nailgun-agent uses ohai and rethtool for reading eth info,
including ethernet card speed. However, current methods rely on the
drivers populating the advertised and/or supported link speed lists.
This is not true for all drivers, especially for some Fibers
that only report the speed via ethtool when the link is up.
This patch adds support for reading L1 info from ohai, which
supports parsing ethtool speed starting with version amos2 [1].
[1] https://linux.enea.com/mos-repos/ubuntu/8.0/pool/main/o/
ohai/ohai_6.14.0-2~u14.04+mos1+mos8.0+amos2_all.deb
Change-Id: Ic8c252e411a680af32cc68574c572434147a7e78
|
|
Older ThunderX and possibly other UEFI-enabled targets do not support
rtc-efi properly, so they end up filling dmesg with useless
complaints about not being able to read system time.
This adds a simple test for rtc-efi and blacklists it in target OS
(Ubuntu) if not supported.
While we're at it, rename a patch file I missed in a previous rebase
and update TODO.
Change-Id: Ia86b27ad50aca9b0fde50522f2bd15d329726f34
|
|
Older ThunderX and possibly other UEFI-enabled targets do not support
rtc-efi properly, so they end up filling dmesg with useless
complaints about not being able to read system time.
armband-rtc-efi-fix validates rtc-efi can be used on the system,
otherwise it rmmods rtc_efi kernel module via rcS script.
This patch hardcodes the addition of armband-rtc-ef-fix package during
bootstrap image build.
NOTES:
This could be later removed or, if other fixes need to be delivered
like this, grouped in a meta package.
Target OS (Ubuntu) still needs to be handled, preferably by blacklisting
rtc-efi module and rebuilding initramfs during provisioning.
Fuel 9.0 moved default package list to openstack.yaml fixture, see [1].
[1] https://github.com/openstack/fuel-web/commit/
4ee42effe27694bd231663e3d0f10c0c42877177
Change-Id: I57d632e3915058bbb1fc56b3a7fbd5d15787f9d9
|
|
While we're at if, fix whitespace errors in affected patches.
Change-Id: Ic14e3e13f9503ab4b9307e55c731825b8a33da3b
|
|
Change-Id: If0d4c64742d0984f32c7c68bc903332ceea656e9
|
|
|
|
Ubuntu Trusty arm64 udev is currently overriden by MOS udev,
add MOS udev to local mirrors on Fuel Master.
Change-Id: I08f384b9dea940f39ee29a1ab6ff7302c18d9e51
|
|
arm64 udev in Ubuntu Trusty is broken, so we had to provide our own
patched udev package in armband MOS repos.
Due to dpkg version comparison algorithm, our MOS version of udev
is considered a downgrade, which requires --force-yes for
apt-get dist-upgrade to work and pick up this version, otherwise
bootstrap/target image build would fail with apt-get error code 100.
This change can be dropped later, if other packages do not manifest
the same behavior.
Change-Id: I00f6a55290f2d09fd6aacfa948c84e39da27923d
|
|
|
|
|
|
[ Stanislaw Kardach <stanislaw.kardach@caviumnetworks.com> ]
* Fix upload_cirros timeout
* Workaround for default video device in nova
* Fix syntax and increase TestVM's RAM requirements
[ Alexandru Avadanii <Alexandru.Avadanii@enea.com> ]
* Cleanup: Obsolete SEPARATE_IMAGES.
* Nova libvirt drv: arm64: Update console default.
* fuel{,-main}: Cleanup obsolete patches.
* nova: Fix inject for direct boot with part table.
See https://bugs.launchpad.net/nova/+bug/1290455 for full bug
description. For now, we detect direct kernel boot with a partition
table inside disk image by passing target_partition when root kernel
arg points to a partition (instead of the whole disk).
* Drop obsolete/done TODO entries.
* Nova: Fix os cmd line parsing for list case.
* ceph: Fix obsolete XFS mount param.
* Fix out-of-order embedded patch hunks.
Signed-off-by: Stanislaw Kardach <stanislaw.kardach@caviumnetworks.com>
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
|
|
* We were missing the patch rebase changes that were introduced by gerrit
automatic upstream project update for submodules. This patch introduces
them.
* Apply all submodule patches a single `git am` call to help with
rebasing patches.
* Correct Opendaylight plugin initialization in repo config.
Signed-off-by: Stanislaw Kardach <stanislaw.kardach@caviumnetworks.com>
|
|
[ Florin Dumitrascu <florin.dumitrascu@enea.com> ]
* arm64 support for OpenDaylight Fuel Plugin
[ Stanislaw Kardach <kda@semihalf.com> ]
* Limit ESP to first drive
* Remove default+timeout+tr from cobbler profile
* Fix puppet syntax errors
* Disable usb tablet on aarch64
* Support direct kernel boot for CirrOS TestVM on aarch64
* Remove git version signature not to confuse patches-export
* Fix VGA support for CirrOS TestVM
* Makefile: Add clean-{docker,build}.
[ Alexandru Avadanii <Alexandru.Avadanii@enea.com> ]
* Performance: Use gzip instead of xz compression.
* Switch mirror proto from https to http.
* Update TODO with remaining tasks.
* Disable amd64 Liberty fixture (no multi-arch support yet).
* m1.micro: Increase RAM size to 128MB for aarch64 images.
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Signed-off-by: Florin Dumitrascu <florin.dumitrascu@enea.com>
Signed-off-by: Stanislaw Kardach <kda@semihalf.com>
|
|
This brings initial code base for Armband project that allows building
an OPNFV Fuel 8 iso based on Brahmaputra components to be deployed on
arm64 servers.
Signed-off-by: Stanislaw Kardach <kda@semihalf.com>
Signed-off-by: Alexandru Avadanii <alexandru.avadanii@enea.com>
Signed-off-by: Florin Dumitrascu <florin.dumitrascu@enea.com>
JIRA:FUEL-39
|