This commit updates the iproute package from 4.11.0-14 shipped with
CentOS 7.6.1810 (i.e., StarlingX baseline) to 5.9.0-4 shipped with
CentOS 8.4.2105, because the former version does not support the "seg6"
and "seg6local" encapsulation types (used for segment-based routing via
the "ip route" command).
Segment-based routing capability was requested by a user, and the
shortcomings of the pre-existing version of iproute package were noticed
when attempting to test the seg6 encapsulation type with a v5.10-based
kernel.
Note that it was not possible to re-use CentOS 8.4.2105's binary RPM
package on StarlingX, due to the fact that StarlingX's CentOS 7.6.1810
baseline ships with glibc-2.17, whereas the CentOS 8.4.2105 iproute
package depends on glibc-2.27. This requires StarlingX to rebuild the
RPM package.
Verification:
- Installation and bootstrap of an All-in-One simplex system has been
carried out with this commit as an overall regression test.
- The iproute package's git repository was also browsed for potentially
non-backwards-compatible changes by searching for keywords "backward"
and "compat" in the git commit history between versions 4.11.0 and
5.9.0 using "git log -i --grep".
Story: 2008921
Task: 43663
Depends-On: I5e272dc59b8b69611474706c165644a8dd5d7f52
Signed-off-by: M. Vefa Bicakci <vefa.bicakci@windriver.com>
Change-Id: I6de9659dfec830f954661a0b0f82e69dc9637a5d
Add debian packaging directory to build puppet 5.5.22 for starlingx.
Story: 2009101
Task: 43247
Signed-off-by: Charles Short <charles.short@windriver.com>
Change-Id: If2f36cd2781f4d1485f1b47c510f415014ad2d43
This patch updates kexec-tools from 2.0.15 to 2.0.21 (and its supporting
software package makedumpfile from 1.6.2 to 1.6.9) for compatibility
with the newer v5.10 kernel.
This commit clones the kexec-tools package's supporting files from
commit 26a7a543427eac59ed39728466f3d95d320f735a in the CentOS RPM
packaging git repository. Links for reference:
- 26a7a54342
- 26a7a54342
Please note that this patch causes the build system to pull in and
extract an SRPM file to acquire:
kdump-anaconda-addon-003-29-g4c517c5.tar.gz
This is done for security, because the only public reference to commit
4c517c5 is on a Red Hat developer's personal Github account:
https://github.com/ryncsn/kdump-anaconda-addon/commits/rhel-7
kexec-tools package's supporting files cloned by this commit trigger a
large number of shell script linting errors. Given that the shell
scripts in question are inherited from upstream (i.e., CentOS 7), the
"files" directory of this package is excluded from automated linting via
the changes in tox.ini.
Verification: A kexec-tools RPM package built with this commit was
installed onto an existing StarlingX system. A vmcore file was
succesfully collected from a kernel crash triggered with
/proc/sysrq-trigger. A recent version of the crash utility was found to
succesfully parse the collected vmcore file.
Credits: Thanks to Jiping Ma for helping with cleaning up and publishing
an earlier version of this patch.
Story: 2008921
Task: 43040
Depends-On: https://review.opendev.org/c/starlingx/tools/+/805127
Signed-off-by: Jiping Ma <jiping.ma2@windriver.com>
Signed-off-by: M. Vefa Bicakci <vefa.bicakci@windriver.com>
Change-Id: Idc4e523610e4c09259300c8b67ea5e0fbe59c611
Backport containerd 1.5.0 commit
1f5b84f27cd675780bc7127f9aedbfe34cc7590b to reduce clutter of log
entries during process execution
Test Plan: Verify containerd.log logs fewer messages
PASS: Verified that the containerd.log file omits previously noisy log
messages such as "ExecSync for", "Exec process", and "Finish piping"
which are now logged at the Debug verbosity threshold.
Story: 2009272
Task: 43588
Signed-off-by: Gleb Aronsky <gleb.aronsky@windriver.com>
Change-Id: I71d52b8306185917144b0bbf40dd371508f78064
A toleration needs to be added to all resources that create pods since
the node-role.kubernetes.io/master taint will be restored to all master
nodes. This ensures that the pods will run on the master node.
Test plan:
- Building and installing a new iso with this patch and the taint
applied. The armada-api pod was able to run on the tainted node.
- Confirmed that toleration is present when describing the armada pod.
Story: 2009232
Task: 43482
Change-Id: I7ec3a3753b49099279450d6228cce8915bc77cd2
Due to a recent change in fm-api's directory structure, unit tests would
fail since the virtualenv would not be able to find fm-api/setup.py.
Adjust the tox.ini to point to the correct directory. Tested locally
by running tox.ini.
Depends-On: https://review.opendev.org/c/starlingx/fault/+/806046
Story: 2009101
Task: 43091
Signed-off-by: Charles Short <charles.short@windriver.com>
Change-Id: I6e09735bca06a5c9f0868b58ae7de344299ef570
Package latest puppet-dnsmasq from the same repo as the one used on
CentOS 7.
Remains to be tested to see if this works with Puppet 5.
Did build-pkgs. Did build-image.
Story: 2009101
Task: 43257
Signed-off-by: Dan Voiculeasa <dan.voiculeasa@windriver.com>
Change-Id: I34576ecdd89986c5948e0ed74a9afbb9a7fd9f82
In CentOS 7 puppi 2.2.3 is used. Lastest version is 2.2.11.
Puppi supports Puppet 5 starting with 2.2.5 version.
Create debian packaging for puppi 2.2.11.
Did build puppet-puppi. Did build iso.
Story: 2009101
Task: 43254
Signed-off-by: Dan Voiculeasa <dan.voiculeasa@windriver.com>
Change-Id: I7efd1c988418181e63e6d27105ea90788f46bfb1
Aligned with Debian Bullseye version puppet-rabbitmq-8.5.0-6.
Did build puppet-rabbitmq-8.5.0 + starlingx patches(adapted from
CentOS7).
Did build an iso.
Story: 2009101
Task: 43300
Signed-off-by: Dan Voiculeasa <dan.voiculeasa@windriver.com>
Change-Id: I4f859b16e719e0a48c45e99906893362833bddaa
Aligned with Debian Bullseye version nanliu-staging-1.0.4-2.
Did build nanliu-staging + starlingx patches(adapted from CentOS7).
Did build an iso.
Story: 2009101
Task: 43291
Signed-off-by: Dan Voiculeasa <dan.voiculeasa@windriver.com>
Change-Id: I46a5a604d425fb9af1b17a7753eb4455db1904b2
Multiple versions of kubernetes are required to support upgrade.
This adds staged version of kubernetes 1.21.3, built with a
specific version of golang.
All subpackage versions are included in the iso image without
collisions.
The following patches are ported to specific kubernetes version:
kubelet-cpumanager-disable-CFS-quota-throttling-for-.patch
kubelet-cpumanager-keep-normal-containers-off-reserv.patch
kubelet-cpumanager-infrastructure-pods-use-system-re.patch
kubelet-cpumanager-introduce-concept-of-isolated-CPU.patch
kubeadm-create-platform-pods-with-zero-CPU-resources.patch
enable-support-for-kubernetes-to-ignore-isolcpus.patch
The following changes were made for 1.21.3:
- following upstream commit was reverted:
Revert-use-subpath-for-coredns-only-for-default-repo.patch
- kubelet-cpumanager-disable-CFS-quota-throttling-for-.patch
was refactored due to new internal_container_lifecycle framework
We leverage the same mechanism to set Linux resources as:
cpu manager: specify the container CPU set during the creation
(commit 38dc7509f862f081828e7d9167107b8c6e98ea23).
- kubelet-cpumanager-introduce-concept-of-isolated-CPU.patch
was refactored due to upstream API change:
node: podresources: make GetDevices() consistent
(commit ad68f9588c72d6477b5a290c548a9031063ac659).
The routine podIsolCPUs() was refactored in 1.21.3 since the
API p.deviceManager.GetDevices() is returning multiple devices
with a device per cpu. The resultant cpuset needs to be the
aggregate.
Story: 2008972
Task: 43056
Signed-off-by: Jim Gauld <james.gauld@windriver.com>
Change-Id: I5ba7ff2e6aebb744af265698c0f90256ac5e70f4
- Upversion code tar from 8.4 to 9.15
- Modify drbd.spec to apply code patches
- Porting 8.4 code patches to 9.15
(Combine several current patches by target file)
Test
- drbd resize operation. Ensure no outstanding alarms
and drbd-overview indicates insync; and 'sudo lvs'
indicates resized correctly
- drbd resize operation prior to upgrade and then
performing the upgrade.
e.g. drbd may be resized via
'system controllerfs-modify etcd=<largervalue>',
when both controllers are
unlocked-enabled-available
Story: 2009067
Task: 42873
Depends-On: https://review.opendev.org/806736
Signed-off-by: Takamasa Takenaka <takamasa.takenaka@windriver.com>
Change-Id: I25cb46e4b77f90c91d5d7e4dcfa79125776163d1
Facter 3 was rewritten in C++. Looking at the source code there are
big differences. For example ipaddress fact is now collected part of
a networking fact. Porting patch 5 require testing of puppet
modules which are not yet packaged for Debian.
Some Facter 2 modules were removed in Facter 3. Porting patch 1 ,3, 4
may be done at a latter time if the modules from facter 2 are added
back.
Adapted only 0002 patch.
Did build facter 3.14.12-1 + 1 starlingx patch adapted from CentOS7.
Did build an iso.
Tested facter showing personality and subfunction.
Story: 2009101
Task: 43222
Signed-off-by: Dan Voiculeasa <dan.voiculeasa@windriver.com>
Change-Id: Id9270ab5c986cb6570346faec8a78893ff0363fb
Following an upgrade, some pods using
hugepages will still be in Running
state, but will have a replica that stays in
OutOfhugepages state.
k8s-pod-recovery can detect those pods and
delete them.
Closes-bug: 1943113
Signed-off-by: Daniel Safta <daniel.safta@windriver.com>
Change-Id: Idba510cabd66cd8b796563e3e6efa9baa5b4401e
Multiple versions of kubernetes are required to support upgrade.
This adds staged version of kubernetes 1.20.9, built with a
specific version of golang.
All subpackage versions are included in the iso image without
collisions.
The following patches are ported to specific kubernetes version:
kubelet-cpumanager-disable-CFS-quota-throttling-for-.patch
kubelet-cpumanager-keep-normal-containers-off-reserv.patch
kubelet-cpumanager-infrastructure-pods-use-system-re.patch
kubelet-cpumanager-introduce-concept-of-isolated-CPU.patch
kubeadm-create-platform-pods-with-zero-CPU-resources.patch
enable-support-for-kubernetes-to-ignore-isolcpus.patch
Story: 2008972
Task: 43056
Signed-off-by: Jim Gauld <james.gauld@windriver.com>
Change-Id: Ie19612f1980690be073ab2236afbb9ccefe504e5
A lot of work has gone into making sure that StarlingX is python3
compatible. To ensure future compatibility, enable the python3
portability checks. Disable the checks that are raising errors.
Another set of commits will address the offending code.
Story: 2006796
Task: 43273
Signed-off-by: Bernardo Decco <bernardo.deccodesiqueira@windriver.com>
Change-Id: Ic4b51f71f1680b78b70e05785aca15150e7e5b2a
Debian packaging contains a control file called meta_data.yaml.
In that file the download path of the source packages is needed and
is usually long.
Change long line errors to warnings for yaml linter.
Define long line starting from 160 characters for yaml linter.
Story: 2009101
Task: 43223
Signed-off-by: Dan Voiculeasa <dan.voiculeasa@windriver.com>
Change-Id: I05999d2ce9bd52e317f951ec76688538ef5d7c9b
We use the CentOS 8 version of the source package
and apply the same six patches that we applied to
the previous version, with one caveat. Patch 3
had an additional test in it of the uncalibrated
state, and this test does not exist in the upstream
version of the patch. Now patch 3 is identical
to the upstream version.
All five upstream patches have been refreshed to
what was actually accepted upstream and thus now
contain proper git headers. The logic of those
five patches remain as they were, with the one
exception noted in the previous paragraph.
Patch 6 has also now been given a proper git header.
Change-Id: Ifd44680d2f190dc0c5662bd05bd214fccf50a2fd
Story: 2009130
Task: 43199
Signed-off-by: Jim Somerville <Jim.Somerville@windriver.com>
The block number is a 16-bit counter which only allows to fetch
files no bigger than 65535 * blksize. To avoid this limit, the
counter is rolled over. This behavior isn't defined in RFC 1350
but is handled by many TFTP servers and it's what GRUB was doing
before implicitly due an overflow.
Closes-Bug: #1938559
Signed-off-by: Jiping Ma <jiping.ma2@windriver.com>
Change-Id: I4a0c04cf15b87f6f40c7a979d20fb3c57657cefd
Multiple versions of kubernetes are required to support upgrade.
This adds staged versions of kubernetes 1.18.1 and 1.19.13, each are
built with a specific version of golang.
All subpackage versions are included in the iso image without collisions.
The following patches are included upstream in kubernetes 1.19 and are no
longer required:
Patch1: 0001-Fix-pagesize-check-to-allow-for-options-already-endi.patch
Patch3: fix_http2_erringroundtripper_handling.patch
Patch8: Fix-exclusive-CPU-allocations-being-deleted-at-conta.patch
The following patches are ported to specific kubernetes version:
kubelet-cpumanager-disable-CFS-quota-throttling-for-.patch
kubelet-cpumanager-keep-normal-containers-off-reserv.patch
kubelet-cpumanager-infrastructure-pods-use-system-re.patch
kubelet-cpumanager-introduce-concept-of-isolated-CPU.patch
kubeadm-create-platform-pods-with-zero-CPU-resources.patch
enable-support-for-kubernetes-to-ignore-isolcpus.patch
Depends-On: https://review.opendev.org/c/starlingx/ansible-playbooks/+/806912
Story: 2008972
Task: 43055
Signed-off-by: Jim Gauld <james.gauld@windriver.com>
Change-Id: I90871451c361e4d855098adbf0c9f4f0fddcc461
Patch the python2-kubernetes-8.0.0-8.el7.noarch.rpm with recent
bug fix commits required for proper kubernetes watch functionality.
Patches watch.py up to commit 10ae476 in the 'base' repo
(kubernetes-client/python-base).
Commits are taken from the cloned github repo, saved in patch format,
and applied as a patch to the source RPM.
Reference:
https://github.com/kubernetes-client/python-base/commits/master/watch/watch.py
This patch includes commits beginning with d56fdbc, up to and including 10ae476
Testing:
- Built and testing on local distributed cloud system
- Similar testing to this patch but ased on locally modified package
has been done on 1000 subcloud system
- Examine/compare contents of installed package vs. expected
- Generating events which trigger the watch conditions
- Monitor watches for proper behaviour on expiry
Story: 2008960
Task: 43053
Signed-off-by: Kyle MacLeod <kyle.macleod@windriver.com>
Change-Id: I7ad78957b6ef61e7204c45f482f201d5c281385b
Disable the building of a debug package for isolcpus-device-plugin. It
causes grief with regards to centos8. As seen below:
RPM build errors:
error: Empty %files file /builddir/build/BUILD/isolcpus-device-plugin-1.0/debugsourcefiles.list
line 23: second Summary
Empty %files file /builddir/build/BUILD/isolcpus-device-plugin-1.0/debugsourcefiles.list
Child return code was: 1
Story: 2006796
Task: 42945
Signed-off-by: Charles Short <charles.short@windriver.com>
Change-Id: Ia239704de1b08909f2ef84d4aadd1fe240bf1e75
Instead of using the distribution of UL/DL queues between 2 VFs like in
the original fpga_5gnr/fpga_5gnr_config_vf.cfg file, all of them are
set for usage by the first VF, only.
Task: 43044
Story: 2009036
Signed-off-by: Douglas Henrique Koerich <douglashenrique.koerich@windriver.com>
Change-Id: Ie7524eea807e7a49a304475e3451f717954c3ea5