Merge remote-tracking branch 'gerrit/master' into f/centos8
Depends-on: https://review.opendev.org/#/c/766436 Depends-on: https://review.opendev.org/#/c/766414 Change-Id: I01624b0ab4dc42483a79fe9a016613d1c308c08d Signed-off-by: Yong Fu <fuyong@neusoft.com>
This commit is contained in:
commit
2d997dcb6d
@ -1 +1 @@
|
||||
TIS_PATCH_VER=0
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -1 +1 @@
|
||||
TIS_PATCH_VER=1
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -1 +1 @@
|
||||
TIS_PATCH_VER=1
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -1 +1 @@
|
||||
TIS_PATCH_VER=7
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -1,2 +1,2 @@
|
||||
COPY_LIST="$CGCS_BASE/downloads/dpkg_1.18.24.tar.xz"
|
||||
TIS_PATCH_VER=1
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -1,2 +1,2 @@
|
||||
SRC_DIR="files"
|
||||
TIS_PATCH_VER=1
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -1 +1 @@
|
||||
TIS_PATCH_VER=1
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -1,2 +1,2 @@
|
||||
COPY_LIST="files/*"
|
||||
TIS_PATCH_VER=2
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -1,2 +1,2 @@
|
||||
COPY_LIST="$CGCS_BASE/downloads/dtc-1.4.4.tar.gz"
|
||||
TIS_PATCH_VER=1
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -1 +1 @@
|
||||
TIS_PATCH_VER=1
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -79,4 +79,3 @@ index a11898f..8b029b4 100644
|
||||
%endif
|
||||
--
|
||||
2.17.1
|
||||
|
||||
|
@ -1,2 +1,2 @@
|
||||
TIS_PATCH_VER=1
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
BUILD_IS_SLOW=3
|
||||
|
@ -1 +1 @@
|
||||
TIS_PATCH_VER=1
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -1 +1 @@
|
||||
TIS_PATCH_VER=1
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -1 +1 @@
|
||||
TIS_PATCH_VER=1
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -1,2 +1,2 @@
|
||||
COPY_LIST="files/*"
|
||||
TIS_PATCH_VER=1
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -1 +1 @@
|
||||
TIS_PATCH_VER=1
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -1,2 +1,2 @@
|
||||
TIS_PATCH_VER=1
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
BUILD_IS_SLOW=7
|
||||
|
@ -1,2 +1,2 @@
|
||||
COPY_LIST="files/*"
|
||||
TIS_PATCH_VER=2
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -2,5 +2,5 @@ COPY_LIST=" \
|
||||
$STX_BASE/downloads/Redfishtool-1.1.0.tar.gz \
|
||||
$PKG_BASE/files/* \
|
||||
"
|
||||
TIS_PATCH_VER=1
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
||||
|
@ -33,9 +33,6 @@ python3-ryu-common
|
||||
# lldpd
|
||||
lldpd
|
||||
|
||||
|
||||
|
||||
|
||||
# tss2
|
||||
tss2
|
||||
|
||||
@ -43,26 +40,21 @@ tss2
|
||||
# libtpms
|
||||
libtpms
|
||||
|
||||
# swtpm
|
||||
swtpm
|
||||
swtpm-cuse
|
||||
swtpm-tools
|
||||
|
||||
|
||||
# python-3parclient
|
||||
python3-3parclient
|
||||
|
||||
# python-lefthandclient
|
||||
python3-lefthandclient
|
||||
|
||||
|
||||
|
||||
# docker-distribution
|
||||
docker-distribution
|
||||
|
||||
# helm
|
||||
helm
|
||||
|
||||
# armada
|
||||
armada
|
||||
|
||||
# rpm
|
||||
rpm-plugin-systemd-inhibit
|
||||
|
||||
@ -171,6 +163,7 @@ kubernetes-node
|
||||
kubernetes-kubeadm
|
||||
kubernetes-client
|
||||
containerd
|
||||
k8s-pod-recovery
|
||||
|
||||
# resource-agents
|
||||
resource-agents
|
||||
|
@ -24,7 +24,6 @@ networking/openvswitch
|
||||
security/tss2
|
||||
security/tpm2-tools
|
||||
security/libtpms
|
||||
security/swtpm
|
||||
security/spectre-meltdown-checker
|
||||
config/puppet-4.8.2
|
||||
config/puppet-modules/puppet-boolean-1.0.2
|
||||
@ -58,6 +57,10 @@ kubernetes/kubernetes
|
||||
kubernetes/docker-distribution
|
||||
kubernetes/etcd
|
||||
kubernetes/helm
|
||||
kubernetes/chartmuseum
|
||||
kubernetes/armada-helm-toolkit
|
||||
kubernetes/armada
|
||||
kubernetes/k8s-pod-recovery
|
||||
grub/grubby
|
||||
base/dpkg
|
||||
base/cluster-resource-agents
|
||||
@ -80,3 +83,4 @@ requests-toolbelt
|
||||
python/python-mechanize
|
||||
python/python-html5lib
|
||||
#python/python-webencodings
|
||||
#python/python-daemon
|
||||
|
@ -1,11 +1,14 @@
|
||||
armada-6cc6346cde888c683fec4df910ebefdf6dccb310.tar.gz#armada#https://github.com/airshipit/armada/tarball/6cc6346cde888c683fec4df910ebefdf6dccb310#http##
|
||||
blkin-f24ceec055ea236a093988237a9821d145f5f7c8.tar.gz#blkin#https://api.github.com/repos/ceph/blkin/tarball/f24ceec055ea236a093988237a9821d145f5f7c8#https##
|
||||
boost_1_67_0.tar.bz2#boost_1_67_0#https://dl.bintray.com/boostorg/release/1.67.0/source/boost_1_67_0.tar.bz2#https##
|
||||
ceph-erasure-code-corpus-2d7d78b9cc52e8a9529d8cc2d2954c7d375d5dd7.tar.gz#ceph-erasure-code-corpus#https://api.github.com/repos/ceph/ceph-erasure-code-corpus/tarball/2d7d78b9cc52e8a9529d8cc2d2954c7d375d5dd7#https##
|
||||
ceph-object-corpus-e32bf8ca3dc6151ebe7f205ba187815bc18e1cef.tar.gz#ceph-object-corpus#https://api.github.com/repos/ceph/ceph-object-corpus/tarball/e32bf8ca3dc6151ebe7f205ba187815bc18e1cef#https##
|
||||
chartmuseum-0.12.0.tar.gz#chartmuseum#https://github.com/helm/chartmuseum/archive/v0.12.0.tar.gz#https##
|
||||
!chartmuseum-v0.12.0-amd64#chartmuseum-bin#https://s3.amazonaws.com/chartmuseum/release/v0.12.0/bin/linux/amd64/chartmuseum#https##
|
||||
civetweb-ff2881e2cd5869a71ca91083bad5d12cccd22136.tar.gz#civetweb#https://api.github.com/repos/ceph/civetweb/tarball/ff2881e2cd5869a71ca91083bad5d12cccd22136#https##
|
||||
containerd-v1.3.3.tar.gz#containerd#https://github.com/containerd/containerd/archive/v1.3.3.tar.gz#https##
|
||||
crictl-v1.18.0-linux-amd64.tar.gz#crictl#https://github.com/kubernetes-sigs/cri-tools/releases/download/v1.18.0/crictl-v1.18.0-linux-amd64.tar.gz#https##
|
||||
# docker-distribution-48294d928ced5dd9b378f7fd7c6f5da3ff3f2c89.tar.gz#docker-distribution#github.com/docker/distribution/archive/48294d928ced5dd9b378f7fd7c6f5da3ff3f2c89.tar.gz#http##
|
||||
docker-distribution-v2.7.1.tar.gz#docker-distribution-2.7.1#https://github.com/docker/distribution/archive/v2.7.1.tar.gz#http##
|
||||
# docker-libtrust-fa567046d9b14f6aa788882a950d69651d230b21.tar.gz#docker-libtrust#https://github.com/docker/libtrust/archive/fa567046d9b14f6aa788882a950d69651d230b21.tar.gz#http##
|
||||
dpdk-18.11.tar.xz#dpdk-18.11#http://fast.dpdk.org/rel/dpdk-18.11.tar.xz#http##
|
||||
dpdk-6ece49ad5a26f5e2f5c4af6c06c30376c0ddc387.tar.gz#dpdk#https://api.github.com/repos/spdk/dpdk/tarball/6ece49ad5a26f5e2f5c4af6c06c30376c0ddc387#https##
|
||||
@ -22,7 +25,7 @@ googletest-fdb850479284e2aae047b87df6beae84236d0135.tar.gz#googletest#https://ap
|
||||
# gophercloud-gophercloud-aa00757ee3ab58e53520b6cb910ca0543116400a.tar.gz#gophercloud-gophercloud#github.com/gophercloud/gophercloud/archive/aa00757ee3ab58e53520b6cb910ca0543116400a.tar.gz#http##
|
||||
# gorilla-context-08b5f424b9271eedf6f9f0ce86cb9396ed337a42.tar.gz#gorilla-context#https://github.com/gorilla/context/archive/08b5f424b9271eedf6f9f0ce86cb9396ed337a42.tar.gz#http##
|
||||
# gorilla-mux-456bcfa82d672db7cae587c9b541463f65bc2718.tar.gz#gorilla-mux#https://github.com/gorilla/mux/archive/456bcfa82d672db7cae587c9b541463f65bc2718.tar.gz#http##
|
||||
helm-v2.13.1-linux-amd64.tar.gz#linux-amd64#https://storage.googleapis.com/kubernetes-helm/helm-v2.13.1-linux-amd64.tar.gz#http##
|
||||
helm-v3.2.1-linux-amd64.tar.gz#linux-amd64#https://get.helm.sh/helm-v3.2.1-linux-amd64.tar.gz#http##
|
||||
isa-l-7e1a337433a340bc0974ed0f04301bdaca374af6.tar.gz#isa-l#https://api.github.com/repos/ceph/isa-l/tarball/7e1a337433a340bc0974ed0f04301bdaca374af6#https##
|
||||
isa-l_crypto-603529a4e06ac8a1662c13d6b31f122e21830352.tar.gz#isa-l_crypto#https://api.github.com/repos/01org/isa-l_crypto/tarball/603529a4e06ac8a1662c13d6b31f122e21830352#https##
|
||||
jerasure-96c76b89d661c163f65a014b8042c9354ccf7f31.tar.gz#jerasure#https://api.github.com/repos/ceph/jerasure/tarball/96c76b89d661c163f65a014b8042c9354ccf7f31#https##
|
||||
@ -35,7 +38,7 @@ libtpms-0.6.0-4f0d59d.tar.gz#libtpms-0.6.0#https://github.com/stefanberger/libtp
|
||||
lldpd-0.9.0.tar.gz#lldpd-0.9.0#https://media.luffy.cx/files/lldpd/lldpd-0.9.0.tar.gz#http##
|
||||
lua-1fce39c6397056db645718b8f5821571d97869a4.tar.gz#lua#https://api.github.com/repos/ceph/lua/tarball/1fce39c6397056db645718b8f5821571d97869a4#https##
|
||||
!mariadb-10.3.17.tar.gz#mariadb-10.3.17#https://github.com/MariaDB/server/archive/mariadb-10.3.17.tar.gz#http_script##post-dl-script/mariadb.sh
|
||||
!MLNX_OFED_SRC-4.7-3.2.9.0.tgz#MLNX_OFED_SRC-4.7-3.2.9.0#http://content.mellanox.com/ofed/MLNX_OFED-4.7-3.2.9.0/MLNX_OFED_SRC-4.7-3.2.9.0.tgz#http_script##post-dl-script/MLNX_OFED.sh
|
||||
openstack-helm-infra-c9d6676bf9a5aceb311dc31dadd07cba6a3d6392.tar.gz#openstack-helm-infra#https://github.com/openstack/openstack-helm-infra/archive/c9d6676bf9a5aceb311dc31dadd07cba6a3d6392.tar.gz#http##
|
||||
openvswitch-2.11.0.tar.gz#openvswitch-2.11.0#https://github.com/openvswitch/ovs/archive/v2.11.0.tar.gz#http##
|
||||
puppet-boolean-22b726dd78b0a60a224cc7054aebbf28e9306f62.tar.gz#puppet-boolean#https://github.com/voxpupuli/puppet-boolean/tarball/22b726dd78b0a60a224cc7054aebbf28e9306f62#http##
|
||||
puppet-dnsmasq-cff07e90890662972c97684a2baee964f68ff3ed.tar.gz#packstack/puppet/modules/dnsmasq/#https://github.com/procore/puppet-dnsmasq/tarball/cff07e90890662972c97684a2baee964f68ff3ed#http##
|
||||
@ -62,7 +65,6 @@ runc-1.0.0-rc10.tar.gz#runc#https://github.com/opencontainers/runc/archive/v1.0.
|
||||
# Sirupsen-logrus-55eb11d21d2a31a3cc93838241d04800f52e823d.tar.gz#Sirupsen-logrus#github.com/Sirupsen/logrus/archive/55eb11d21d2a31a3cc93838241d04800f52e823d.tar.gz#http##
|
||||
spdk-f474ce6930f0a44360e1cc4ecd606d2348481c4c.tar.gz#spdk#https://api.github.com/repos/ceph/spdk/tarball/f474ce6930f0a44360e1cc4ecd606d2348481c4c#https##
|
||||
spectre-meltdown-checker-0.37+-5cc77741.tar.gz#spectre-meltdown-checker#https://github.com/speed47/spectre-meltdown-checker/tarball/5cc77741af1d2f52140aa9f89339f56b6c4b6783#http##
|
||||
swtpm-0.1.0-253eac5.tar.gz#swtpm-0.1.0#https://github.com/stefanberger/swtpm/tarball/1303be7d03294fb02204cb8242f366cbf0da076d#http##
|
||||
trident-installer-20.04.0.tar.gz#trident-installer-20.04.0#https://github.com/NetApp/trident/releases/download/v20.04.0/trident-installer-20.04.0.tar.gz#https##
|
||||
!tss2-930.tar.gz#tss2-930#https://git.code.sf.net/p/ibmtpm20tss/tss#git#v930#
|
||||
xxHash-1f40c6511fa8dd9d2e337ca8c9bc18b3e87663c9.tar.gz#xxHash#https://api.github.com/repos/ceph/xxHash/tarball/1f40c6511fa8dd9d2e337ca8c9bc18b3e87663c9#https##
|
||||
|
@ -22,6 +22,6 @@ if [ -f ${SRC_DIR}/src/.git_version ]; then
|
||||
fi
|
||||
|
||||
TIS_BASE_SRCREV=02899bfda814146b021136e9d8e80eba494e1126
|
||||
TIS_PATCH_VER=GITREVCOUNT+1
|
||||
TIS_PATCH_VER=GITREVCOUNT+PKG_GITREVCOUNT
|
||||
BUILD_IS_BIG=40
|
||||
BUILD_IS_SLOW=26
|
||||
|
@ -1 +1 @@
|
||||
TIS_PATCH_VER=4
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -1 +1 @@
|
||||
TIS_PATCH_VER=2
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -1 +1 @@
|
||||
TIS_PATCH_VER=11
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -1 +1 @@
|
||||
TIS_PATCH_VER=1
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -1 +1 @@
|
||||
TIS_PATCH_VER=10
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -1 +1 @@
|
||||
TIS_PATCH_VER=6
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -1 +1 @@
|
||||
TIS_PATCH_VER=2
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -13,4 +13,4 @@ COPY_LIST="$CGCS_BASE/downloads/puppet/$PREFIX-$MODULE-$GIT_SHA.tar.gz"
|
||||
|
||||
|
||||
|
||||
TIS_PATCH_VER=1
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -13,4 +13,4 @@ COPY_LIST="$CGCS_BASE/downloads/puppet/$PREFIX-$MODULE-$GIT_SHA.tar.gz"
|
||||
|
||||
|
||||
|
||||
TIS_PATCH_VER=2
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -9,4 +9,4 @@ COPY_LIST="$CGCS_BASE/downloads/puppet/$PREFIX-$MODULE-$GIT_SHA.tar.gz $FILES_BA
|
||||
|
||||
|
||||
|
||||
TIS_PATCH_VER=3
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -9,4 +9,4 @@ COPY_LIST="$CGCS_BASE/downloads/puppet/$PREFIX-$MODULE-$GIT_SHA.tar.gz $FILES_BA
|
||||
|
||||
|
||||
|
||||
TIS_PATCH_VER=9
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -0,0 +1,43 @@
|
||||
From 65b4c4ca7da29d4d91f3d61c4dd1f59fb06aeada Mon Sep 17 00:00:00 2001
|
||||
From: Jim Gauld <james.gauld@windriver.com>
|
||||
Date: Wed, 28 Oct 2020 17:09:20 -0400
|
||||
Subject: [PATCH] Format DRBD resource cpu-mask to support 64 or larger cpus
|
||||
|
||||
This changes the input format of DRBD resource config option
|
||||
cpu-mask so it is correctly parsed in the kernel. The underlying
|
||||
bitmap_parse routine expects large hex values delimited every 8
|
||||
characters with a comma.
|
||||
|
||||
e.g., On large cpu systems, we would see the following kern.log :
|
||||
2020-10-13T20:55:34.079 controller-0 kernel: warning [ 269.423462] drbd
|
||||
drbd-dockerdistribution: Overflow in bitmap_parse(300000003), truncating
|
||||
to 64 bits
|
||||
|
||||
This resulted in drbd_w_* tasks affined to individual cores instead of
|
||||
platform cores.
|
||||
|
||||
Signed-off-by: Jim Gauld <james.gauld@windriver.com>
|
||||
---
|
||||
templates/header.res.erb | 6 +++++-
|
||||
1 file changed, 5 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/templates/header.res.erb b/templates/header.res.erb
|
||||
index df52544..6ac837b 100644
|
||||
--- a/templates/header.res.erb
|
||||
+++ b/templates/header.res.erb
|
||||
@@ -31,7 +31,11 @@ resource <%= @name %> {
|
||||
|
||||
<% if @cpumask -%>
|
||||
options {
|
||||
- cpu-mask <%= @cpumask %>;
|
||||
+<%# To support 64 cpu systems or larger, need to format cpu-mask string
|
||||
+with surrounding double quotes. Also must delimit the hex string in
|
||||
+8 character groups starting from the right. This prevents DRBD kernel
|
||||
+module bitmap_parse() routine from truncating input at 64 bits. -%>
|
||||
+ cpu-mask "<%= @cpumask.reverse.scan(/.{1,8}/).join(',').reverse %>";
|
||||
}
|
||||
<% end -%>
|
||||
|
||||
--
|
||||
1.8.3.1
|
||||
|
@ -21,6 +21,7 @@ Patch0006: 0006-CGTS-7164-Add-resource-options-cpu-mask-to-affine-drbd-kern
|
||||
Patch0007: 0007-Add-disk-by-path-test.patch
|
||||
Patch0008: 0008-CGTS-7953-support-for-new-drbd-resources.patch
|
||||
Patch0009: 0009-drbd-slow-before-swact.patch
|
||||
Patch0010: 0010-Format-DRBD-resource-cpu-mask-to-support-64-or-larger-cpus.patch
|
||||
|
||||
BuildArch: noarch
|
||||
|
||||
@ -53,6 +54,7 @@ find . \( -name spec -o -name ext \) | xargs rm -rf
|
||||
%patch0007 -p1
|
||||
%patch0008 -p1
|
||||
%patch0009 -p1
|
||||
%patch0010 -p1
|
||||
|
||||
%install
|
||||
rm -rf %{buildroot}
|
||||
|
@ -13,4 +13,4 @@ COPY_LIST="$CGCS_BASE/downloads/puppet/$PREFIX-$MODULE-$GIT_SHA.tar.gz"
|
||||
|
||||
|
||||
|
||||
TIS_PATCH_VER=2
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -1 +1 @@
|
||||
TIS_PATCH_VER=4
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -6,4 +6,4 @@ GIT_SHA=480f13af6d17d1d3fcf0dc7b4bd04b49fa4099e1
|
||||
|
||||
COPY_LIST="$CGCS_BASE/downloads/puppet/$PREFIX-$MODULE-$GIT_SHA.tar.gz"
|
||||
|
||||
TIS_PATCH_VER=3
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -9,4 +9,4 @@ COPY_LIST="$CGCS_BASE/downloads/puppet/$PREFIX-$MODULE-$GIT_SHA.tar.gz $FILES_BA
|
||||
|
||||
|
||||
|
||||
TIS_PATCH_VER=5
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -13,4 +13,4 @@ COPY_LIST="$CGCS_BASE/downloads/puppet/$PREFIX-$MODULE-$GIT_SHA.tar.gz $FILES_BA
|
||||
|
||||
|
||||
|
||||
TIS_PATCH_VER=7
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -13,4 +13,4 @@ COPY_LIST="$CGCS_BASE/downloads/puppet/$PREFIX-$MODULE-$GIT_SHA.tar.gz"
|
||||
|
||||
|
||||
|
||||
TIS_PATCH_VER=2
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -9,4 +9,4 @@ COPY_LIST="$CGCS_BASE/downloads/puppet/$PREFIX-$MODULE-$GIT_SHA.tar.gz $FILES_BA
|
||||
|
||||
|
||||
|
||||
TIS_PATCH_VER=2
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -5,4 +5,4 @@ GIT_SHA=c1c47f4edfd761d1bbde32a75da0c3fa7cc93a81
|
||||
|
||||
COPY_LIST="$CGCS_BASE/downloads/puppet/$MODULE-$GIT_SHA.tar.gz"
|
||||
|
||||
TIS_PATCH_VER=0
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -1 +1 @@
|
||||
TIS_PATCH_VER=6
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -1 +1 @@
|
||||
TIS_PATCH_VER=1
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -1 +1 @@
|
||||
TIS_PATCH_VER=2
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -1,4 +1,4 @@
|
||||
COPY_LIST="$CGCS_BASE/downloads/mariadb-10.3.17.tar.gz $PKG_BASE/centos/files/*"
|
||||
TIS_PATCH_VER=15
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
BUILD_IS_BIG=7
|
||||
BUILD_IS_SLOW=19
|
||||
|
@ -1,2 +1,2 @@
|
||||
TIS_PATCH_VER=2
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
sphinx>=1.6.2
|
||||
openstackdocstheme>=1.26.0 # Apache-2.0
|
||||
sphinx>=2.0.0,!=2.1.0 # BSD
|
||||
openstackdocstheme>=2.2.1 # Apache-2.0
|
||||
|
||||
# Release Notes documentation
|
||||
reno>=0.1.1 # Apache2
|
||||
reno>=3.1.0 # Apache-2.0
|
||||
|
@ -27,12 +27,6 @@ project = u'StarlingX Integration'
|
||||
copyright = u'2018, StarlingX'
|
||||
author = u'StarlingX'
|
||||
|
||||
# The short X.Y version
|
||||
version = u''
|
||||
# The full version, including alpha/beta/rc tags
|
||||
release = u'0.1'
|
||||
|
||||
|
||||
# -- General configuration ---------------------------------------------------
|
||||
|
||||
# If your documentation needs a minimal Sphinx version, state it here.
|
||||
@ -58,8 +52,11 @@ source_suffix = '.rst'
|
||||
# The master toctree document.
|
||||
master_doc = 'index'
|
||||
|
||||
bug_project = '1027'
|
||||
bug_tag = 'stx.bug'
|
||||
# openstackdocstheme options
|
||||
openstackdocs_repo_name = 'starlingx/integ'
|
||||
openstackdocs_use_storyboard = True
|
||||
openstackdocs_auto_name = False
|
||||
|
||||
|
||||
# The language for content autogenerated by Sphinx. Refer to documentation
|
||||
# for a list of supported languages.
|
||||
@ -74,7 +71,7 @@ language = None
|
||||
exclude_patterns = []
|
||||
|
||||
# The name of the Pygments (syntax highlighting) style to use.
|
||||
pygments_style = 'sphinx'
|
||||
pygments_style = 'native'
|
||||
|
||||
|
||||
# -- Options for HTML output -------------------------------------------------
|
||||
|
@ -1 +1 @@
|
||||
TIS_PATCH_VER=1
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -1,4 +1,4 @@
|
||||
COPY_LIST="$FILES_BASE/* \
|
||||
$DISTRO/patches/* \
|
||||
$CGCS_BASE/downloads/drbd-8.4.3.tar.gz"
|
||||
TIS_PATCH_VER=7
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -45,6 +45,7 @@ Patch0007: 0007-Update-OCF-to-attempt-connect-in-certain-states.patch
|
||||
Patch0008: 0008-Increase-short-cmd-timeout-to-15-secs.patch
|
||||
Patch0009: 0009-Check-for-mounted-device-before-demoting-Primary-DRB.patch
|
||||
Patch0010: 0010-drbd-include-sysmacros.patch
|
||||
Patch0011: 0011-backport-drbd-main-ipv6-Fix-interface-indices-larger.patch
|
||||
|
||||
License: GPLv2+
|
||||
ExclusiveOS: linux
|
||||
|
@ -0,0 +1,39 @@
|
||||
From 393137563853cde5561845aeb8498d831d6368aa Mon Sep 17 00:00:00 2001
|
||||
From: paul <paul@starlingx.com>
|
||||
Date: Mon, 29 Jun 2020 16:48:39 +0000
|
||||
Subject: [PATCH] backport: drbd main ipv6: Fix interface indices larger than
|
||||
255
|
||||
|
||||
fscanf line probably copied from kernel printf, but printf specifies the
|
||||
minimal field width and scanf the maximal field width.
|
||||
|
||||
The bug was triggered on Xen servers that create and assign new,
|
||||
incremented interface IDs for new machines.
|
||||
|
||||
ifindex is of type int anyways: struct net_device as defined in
|
||||
include/linux/netdevice.h. We should not rely on the assumption that
|
||||
the values are small enough to fit in one byte.
|
||||
|
||||
Signed-off-by: Roland Kammerer <roland.kammerer@linbit.com>
|
||||
|
||||
Signed-off-by: paul <paul@starlingx.com>
|
||||
---
|
||||
user/drbdadm_main.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/user/drbdadm_main.c b/user/drbdadm_main.c
|
||||
index 19c5a44..d516d6f 100644
|
||||
--- a/user/drbdadm_main.c
|
||||
+++ b/user/drbdadm_main.c
|
||||
@@ -3091,7 +3091,7 @@ int have_ip_ipv6(const char *ip)
|
||||
|
||||
while (fscanf
|
||||
(if_inet6,
|
||||
- X32(08) X32(08) X32(08) X32(08) " %*02x %*02x %*02x %*02x %s",
|
||||
+ X32(08) X32(08) X32(08) X32(08) " %*x %*x %*x %*x %s",
|
||||
b, b + 1, b + 2, b + 3, name) > 0) {
|
||||
for (i = 0; i < 4; i++)
|
||||
addr6.s6_addr32[i] = cpu_to_be32(b[i]);
|
||||
--
|
||||
1.8.3.1
|
||||
|
@ -1,3 +1,3 @@
|
||||
COPY_LIST="files/resizepart.sh"
|
||||
TIS_PATCH_VER=1
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
BUILD_IS_SLOW=5
|
||||
|
@ -1,3 +1,3 @@
|
||||
COPY_LIST=""
|
||||
TIS_PATCH_VER=1
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
BUILD_IS_SLOW=8
|
||||
|
@ -1,2 +1,2 @@
|
||||
COPY_LIST=""
|
||||
TIS_PATCH_VER=1
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
8
kubernetes/armada-helm-toolkit/Readme.rst
Normal file
8
kubernetes/armada-helm-toolkit/Readme.rst
Normal file
@ -0,0 +1,8 @@
|
||||
This repo is for https://github.com/openstack/openstack-helm-infra
|
||||
|
||||
Changes to this repo are needed for StarlingX and those changes are
|
||||
not yet merged.
|
||||
Rather than clone and diverge the repo, the repo is extracted at a particular
|
||||
git SHA, and patches are applied on top.
|
||||
|
||||
As those patches are merged, the SHA can be updated and the local patches removed.
|
@ -0,0 +1,61 @@
|
||||
%global src_name openstack-helm-infra
|
||||
%global sha c9d6676bf9a5aceb311dc31dadd07cba6a3d6392
|
||||
%global helm_folder /usr/lib/helm
|
||||
|
||||
Summary: Openstack-Helm-Infra helm-toolkit chart
|
||||
Name: armada-helm-toolkit
|
||||
Version: 1.0
|
||||
Release: %{tis_patch_ver}%{?_tis_dist}
|
||||
License: Apache-2.0
|
||||
Group: base
|
||||
Packager: Wind River <info@windriver.com>
|
||||
URL: https://github.com/openstack/openstack-helm-infra
|
||||
|
||||
Source0: %{src_name}-%{sha}.tar.gz
|
||||
|
||||
BuildArch: noarch
|
||||
|
||||
# Note patches 0003, 0005, 0007 through 0013 do not apply to helm-toolkit
|
||||
Patch01: 0001-Allow-multiple-containers-per-daemonset-pod.patch
|
||||
Patch02: 0002-Add-imagePullSecrets-in-service-account.patch
|
||||
Patch04: 0004-Partial-revert-of-31e3469d28858d7b5eb6355e88b6f49fd6.patch
|
||||
Patch06: 0006-Fix-pod-restarts-on-all-workers-when-worker-added-re.patch
|
||||
|
||||
BuildRequires: helm
|
||||
BuildRequires: chartmuseum
|
||||
|
||||
%description
|
||||
Openstack Helm Infra helm-toolkit chart
|
||||
|
||||
%prep
|
||||
%setup -n openstack-helm-infra
|
||||
%patch01 -p1
|
||||
%patch02 -p1
|
||||
%patch04 -p1
|
||||
%patch06 -p1
|
||||
|
||||
|
||||
%build
|
||||
# Host a server for the charts
|
||||
chartmuseum --debug --port=8879 --context-path='/charts' --storage="local" --storage-local-rootdir="." &
|
||||
sleep 2
|
||||
helm repo add local http://localhost:8879/charts
|
||||
|
||||
# Make the charts. These produce tgz files
|
||||
make helm-toolkit
|
||||
# Both armada-helm-toolkit and openstack-helm-infra provide the same
|
||||
# helm-toolkit tarball filename. Rename files with 'armada-' prefix
|
||||
# to prevent 'Transaction check error'.
|
||||
for filename in *.tgz; do mv -v "$filename" "armada-$filename"; done
|
||||
|
||||
# terminate helm server (the last backgrounded task)
|
||||
kill %1
|
||||
|
||||
%install
|
||||
install -d -m 755 ${RPM_BUILD_ROOT}%{helm_folder}
|
||||
install -p -D -m 755 *.tgz ${RPM_BUILD_ROOT}%{helm_folder}
|
||||
|
||||
%files
|
||||
%dir %attr(0755,root,root) %{helm_folder}
|
||||
%defattr(-,root,root,-)
|
||||
%{helm_folder}/*
|
11
kubernetes/armada-helm-toolkit/centos/build_srpm.data
Normal file
11
kubernetes/armada-helm-toolkit/centos/build_srpm.data
Normal file
@ -0,0 +1,11 @@
|
||||
# NOTE: This package and version is identical to
|
||||
# stx/openstack-armada-app/openstack-helm-infra .
|
||||
# This decouples distro build of armada chart from flock.
|
||||
TAR_NAME=openstack-helm-infra
|
||||
SHA=c9d6676bf9a5aceb311dc31dadd07cba6a3d6392
|
||||
VERSION=1.0.0
|
||||
TAR="$TAR_NAME-$SHA.tar.gz"
|
||||
|
||||
COPY_LIST="${CGCS_BASE}/downloads/$TAR $PKG_BASE/files/*"
|
||||
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
@ -0,0 +1,40 @@
|
||||
From 47315e28d44cff586f6fff026dd00e61c2c77bcd Mon Sep 17 00:00:00 2001
|
||||
From: Gerry Kopec <Gerry.Kopec@windriver.com>
|
||||
Date: Wed, 9 Jan 2019 20:11:33 -0500
|
||||
Subject: [PATCH 1/4] Allow multiple containers per daemonset pod
|
||||
|
||||
Remove code that restricted daemonset pods to single containers.
|
||||
Container names will default to name from helm chart template.
|
||||
Required for nova cold migrations to work.
|
||||
|
||||
Story: 2003876
|
||||
Task: 26735
|
||||
Change-Id: Icce660415d43baefbbf768a785c5dedf04ea2930
|
||||
Signed-off-by: Gerry Kopec <Gerry.Kopec@windriver.com>
|
||||
(cherry picked from commit 7ca30319f418cd39db5ecf44cce5fb5fe39c458e)
|
||||
Signed-off-by: Robert Church <robert.church@windriver.com>
|
||||
---
|
||||
helm-toolkit/templates/utils/_daemonset_overrides.tpl | 7 -------
|
||||
1 file changed, 7 deletions(-)
|
||||
|
||||
diff --git a/helm-toolkit/templates/utils/_daemonset_overrides.tpl b/helm-toolkit/templates/utils/_daemonset_overrides.tpl
|
||||
index e352bc9..10ab166 100644
|
||||
--- a/helm-toolkit/templates/utils/_daemonset_overrides.tpl
|
||||
+++ b/helm-toolkit/templates/utils/_daemonset_overrides.tpl
|
||||
@@ -225,13 +225,6 @@ limitations under the License.
|
||||
{{- if not $context.Values.__daemonset_yaml.metadata.name }}{{- $_ := set $context.Values.__daemonset_yaml.metadata "name" dict }}{{- end }}
|
||||
{{- $_ := set $context.Values.__daemonset_yaml.metadata "name" $current_dict.dns_1123_name }}
|
||||
|
||||
- {{/* set container name
|
||||
- assume not more than one container is defined */}}
|
||||
- {{- $container := first $context.Values.__daemonset_yaml.spec.template.spec.containers }}
|
||||
- {{- $_ := set $container "name" $current_dict.dns_1123_name }}
|
||||
- {{- $cont_list := list $container }}
|
||||
- {{- $_ := set $context.Values.__daemonset_yaml.spec.template.spec "containers" $cont_list }}
|
||||
-
|
||||
{{/* cross-reference configmap name to container volume definitions */}}
|
||||
{{- $_ := set $context.Values "__volume_list" list }}
|
||||
{{- range $current_volume := $context.Values.__daemonset_yaml.spec.template.spec.volumes }}
|
||||
--
|
||||
2.7.4
|
||||
|
@ -0,0 +1,26 @@
|
||||
From ac3f9db5ac1a19af71136752f5709ba1da55d201 Mon Sep 17 00:00:00 2001
|
||||
From: Angie Wang <angie.wang@windriver.com>
|
||||
Date: Mon, 11 Feb 2019 11:29:03 -0500
|
||||
Subject: [PATCH 2/4] Add imagePullSecrets in service account
|
||||
|
||||
Signed-off-by: Robert Church <robert.church@windriver.com>
|
||||
---
|
||||
helm-toolkit/templates/snippets/_kubernetes_pod_rbac_serviceaccount.tpl | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/helm-toolkit/templates/snippets/_kubernetes_pod_rbac_serviceaccount.tpl b/helm-toolkit/templates/snippets/_kubernetes_pod_rbac_serviceaccount.tpl
|
||||
index b4cf1a6..2f4113b 100644
|
||||
--- a/helm-toolkit/templates/snippets/_kubernetes_pod_rbac_serviceaccount.tpl
|
||||
+++ b/helm-toolkit/templates/snippets/_kubernetes_pod_rbac_serviceaccount.tpl
|
||||
@@ -44,6 +44,8 @@ kind: ServiceAccount
|
||||
metadata:
|
||||
name: {{ $saName }}
|
||||
namespace: {{ $saNamespace }}
|
||||
+imagePullSecrets:
|
||||
+ - name: default-registry-key
|
||||
{{- range $k, $v := $deps -}}
|
||||
{{- if eq $k "services" }}
|
||||
{{- range $serv := $v }}
|
||||
--
|
||||
2.16.5
|
||||
|
@ -0,0 +1,65 @@
|
||||
From b3829fef30e76fdf498fa1d0d35185f642dce5f6 Mon Sep 17 00:00:00 2001
|
||||
From: Robert Church <robert.church@windriver.com>
|
||||
Date: Mon, 8 Apr 2019 02:12:39 -0400
|
||||
Subject: [PATCH 4/4] Partial revert of
|
||||
31e3469d28858d7b5eb6355e88b6f49fd62032be
|
||||
|
||||
Suspect that new use of mergeOverwrite vs. merge is breaking the
|
||||
per-host DaemonSet overrides.
|
||||
|
||||
Signed-off-by: Robert Church <robert.church@windriver.com>
|
||||
---
|
||||
helm-toolkit/templates/utils/_daemonset_overrides.tpl | 12 ++++++------
|
||||
1 file changed, 6 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/helm-toolkit/templates/utils/_daemonset_overrides.tpl b/helm-toolkit/templates/utils/_daemonset_overrides.tpl
|
||||
index 10ab166..ab1177a 100644
|
||||
--- a/helm-toolkit/templates/utils/_daemonset_overrides.tpl
|
||||
+++ b/helm-toolkit/templates/utils/_daemonset_overrides.tpl
|
||||
@@ -49,10 +49,10 @@ limitations under the License.
|
||||
{{- $override_conf_copy := $host_data.conf }}
|
||||
{{/* Deep copy to prevent https://storyboard.openstack.org/#!/story/2005936 */}}
|
||||
{{- $root_conf_copy := omit ($context.Values.conf | toYaml | fromYaml) "overrides" }}
|
||||
- {{- $merged_dict := mergeOverwrite $root_conf_copy $override_conf_copy }}
|
||||
+ {{- $merged_dict := merge $override_conf_copy $root_conf_copy }}
|
||||
{{- $root_conf_copy2 := dict "conf" $merged_dict }}
|
||||
{{- $context_values := omit (omit ($context.Values | toYaml | fromYaml) "conf") "__daemonset_list" }}
|
||||
- {{- $root_conf_copy3 := mergeOverwrite $context_values $root_conf_copy2 }}
|
||||
+ {{- $root_conf_copy3 := merge $context_values $root_conf_copy2 }}
|
||||
{{- $root_conf_copy4 := dict "Values" $root_conf_copy3 }}
|
||||
{{- $_ := set $current_dict "nodeData" $root_conf_copy4 }}
|
||||
|
||||
@@ -89,10 +89,10 @@ limitations under the License.
|
||||
{{- $override_conf_copy := $label_data.conf }}
|
||||
{{/* Deep copy to prevent https://storyboard.openstack.org/#!/story/2005936 */}}
|
||||
{{- $root_conf_copy := omit ($context.Values.conf | toYaml | fromYaml) "overrides" }}
|
||||
- {{- $merged_dict := mergeOverwrite $root_conf_copy $override_conf_copy }}
|
||||
+ {{- $merged_dict := merge $override_conf_copy $root_conf_copy }}
|
||||
{{- $root_conf_copy2 := dict "conf" $merged_dict }}
|
||||
{{- $context_values := omit (omit ($context.Values | toYaml | fromYaml) "conf") "__daemonset_list" }}
|
||||
- {{- $root_conf_copy3 := mergeOverwrite $context_values $root_conf_copy2 }}
|
||||
+ {{- $root_conf_copy3 := merge $context_values $root_conf_copy2 }}
|
||||
{{- $root_conf_copy4 := dict "Values" $root_conf_copy3 }}
|
||||
{{- $_ := set $context.Values.__current_label "nodeData" $root_conf_copy4 }}
|
||||
|
||||
@@ -187,7 +187,7 @@ limitations under the License.
|
||||
{{- $root_conf_copy1 := omit $context.Values.conf "overrides" }}
|
||||
{{- $root_conf_copy2 := dict "conf" $root_conf_copy1 }}
|
||||
{{- $context_values := omit $context.Values "conf" }}
|
||||
- {{- $root_conf_copy3 := mergeOverwrite $context_values $root_conf_copy2 }}
|
||||
+ {{- $root_conf_copy3 := merge $context_values $root_conf_copy2 }}
|
||||
{{- $root_conf_copy4 := dict "Values" $root_conf_copy3 }}
|
||||
{{- $_ := set $context.Values.__default "nodeData" $root_conf_copy4 }}
|
||||
|
||||
@@ -198,7 +198,7 @@ limitations under the License.
|
||||
{{- range $current_dict := $context.Values.__daemonset_list }}
|
||||
|
||||
{{- $context_novalues := omit $context "Values" }}
|
||||
- {{- $merged_dict := mergeOverwrite $context_novalues $current_dict.nodeData }}
|
||||
+ {{- $merged_dict := merge $current_dict.nodeData $context_novalues }}
|
||||
{{- $_ := set $current_dict "nodeData" $merged_dict }}
|
||||
{{/* Deep copy original daemonset_yaml */}}
|
||||
{{- $_ := set $context.Values "__daemonset_yaml" ($daemonset_yaml | toYaml | fromYaml) }}
|
||||
--
|
||||
2.7.4
|
||||
|
@ -0,0 +1,46 @@
|
||||
From 326fcd76f54d7c099f4c3da6c31eefe0eef2e236 Mon Sep 17 00:00:00 2001
|
||||
From: Ovidiu Poncea <ovidiu.poncea@windriver.com>
|
||||
Date: Mon, 29 Jul 2019 08:00:01 -0400
|
||||
Subject: [PATCH] Fix pod restarts on all workers when worker added/removed
|
||||
|
||||
---
|
||||
helm-toolkit/templates/utils/_daemonset_overrides.tpl | 4 ++--
|
||||
helm-toolkit/templates/utils/_hash.tpl | 2 +-
|
||||
2 files changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/helm-toolkit/templates/utils/_daemonset_overrides.tpl b/helm-toolkit/templates/utils/_daemonset_overrides.tpl
|
||||
index ab1177a..e564869 100644
|
||||
--- a/helm-toolkit/templates/utils/_daemonset_overrides.tpl
|
||||
+++ b/helm-toolkit/templates/utils/_daemonset_overrides.tpl
|
||||
@@ -215,7 +215,7 @@ limitations under the License.
|
||||
name uniqueness */}}
|
||||
{{- $_ := set $current_dict "dns_1123_name" dict }}
|
||||
{{- if hasKey $current_dict "matchExpressions" }}
|
||||
- {{- $_ := set $current_dict "dns_1123_name" (printf (print $name_format2 "-" ($current_dict.matchExpressions | quote | sha256sum | trunc 8))) }}
|
||||
+ {{- $_ := set $current_dict "dns_1123_name" (printf (print $name_format2 "-" ($current_dict.matchExpressions | toJson | sha256sum | trunc 8))) }}
|
||||
{{- else }}
|
||||
{{- $_ := set $current_dict "dns_1123_name" $name_format2 }}
|
||||
{{- end }}
|
||||
@@ -258,7 +258,7 @@ limitations under the License.
|
||||
{{- if not $context.Values.__daemonset_yaml.spec.template.metadata }}{{- $_ := set $context.Values.__daemonset_yaml.spec.template "metadata" dict }}{{- end }}
|
||||
{{- if not $context.Values.__daemonset_yaml.spec.template.metadata.annotations }}{{- $_ := set $context.Values.__daemonset_yaml.spec.template.metadata "annotations" dict }}{{- end }}
|
||||
{{- $cmap := list $current_dict.dns_1123_name $current_dict.nodeData | include $configmap_include }}
|
||||
- {{- $values_hash := $cmap | quote | sha256sum }}
|
||||
+ {{- $values_hash := $cmap | toJson | sha256sum }}
|
||||
{{- $_ := set $context.Values.__daemonset_yaml.spec.template.metadata.annotations "configmap-etc-hash" $values_hash }}
|
||||
|
||||
{{/* generate configmap */}}
|
||||
diff --git a/helm-toolkit/templates/utils/_hash.tpl b/helm-toolkit/templates/utils/_hash.tpl
|
||||
index 1041ec0..e419e3b 100644
|
||||
--- a/helm-toolkit/templates/utils/_hash.tpl
|
||||
+++ b/helm-toolkit/templates/utils/_hash.tpl
|
||||
@@ -19,5 +19,5 @@ limitations under the License.
|
||||
{{- $context := index . 1 -}}
|
||||
{{- $last := base $context.Template.Name }}
|
||||
{{- $wtf := $context.Template.Name | replace $last $name -}}
|
||||
-{{- include $wtf $context | sha256sum | quote -}}
|
||||
+{{- include $wtf $context | toJson | sha256sum | quote -}}
|
||||
{{- end -}}
|
||||
--
|
||||
2.7.4
|
||||
|
83
kubernetes/armada/centos/armada.spec
Normal file
83
kubernetes/armada/centos/armada.spec
Normal file
@ -0,0 +1,83 @@
|
||||
%global git_sha 6cc6346cde888c683fec4df910ebefdf6dccb310
|
||||
|
||||
# Build variables
|
||||
%global helm_folder /usr/lib/helm
|
||||
%global toolkit_version 0.1.0
|
||||
%global charts_staging ./charts
|
||||
|
||||
Name: armada
|
||||
Version: 0.2.0
|
||||
Release: 0%{?_tis_dist}.%{tis_patch_ver}
|
||||
Summary: An orchestrator for managing a collection of Kubernetes Helm charts
|
||||
License: Apache-2.0
|
||||
Group: base
|
||||
Packager: Wind River <info@windriver.com>
|
||||
URL: https://airship-armada.readthedocs.io/
|
||||
Source0: %{name}-%{git_sha}.tar.gz
|
||||
|
||||
Patch1: 0001-Add-Helm-v2-client-initialization-using-tiller-postS.patch
|
||||
|
||||
BuildArch: noarch
|
||||
|
||||
BuildRequires: helm
|
||||
BuildRequires: armada-helm-toolkit
|
||||
BuildRequires: chartmuseum
|
||||
|
||||
%description
|
||||
%{summary}
|
||||
|
||||
%prep
|
||||
%setup -n armada
|
||||
%patch1 -p1
|
||||
|
||||
|
||||
%build
|
||||
# Package the armada chart tarball using methodology derived from:
|
||||
# git clone https://opendev.org/airship/armada.git && cd armada
|
||||
# make charts
|
||||
#
|
||||
# This provides the equivalent of 'make charts' and builds what is
|
||||
# minimally sufficient to generate the armada chart tarball.
|
||||
# - do not need to build helm-toolkit.
|
||||
# - do not need to build tiller (armada chart contains tiller).
|
||||
# - This does not download helm v2 or helm-toolkit as done by 'make charts',
|
||||
# and does not require external network.
|
||||
# - Everything else provided by the armada Makefile build is ignored.
|
||||
#
|
||||
# This is built using helm v3.
|
||||
# - 'helm init' and 'helm serv' have been removed in helm v3
|
||||
# - chartmuseum is drop-in replacement for 'helm serv'
|
||||
# - no initial repository exist
|
||||
# - charts self-contain helm-toolkit and pass lint; requirements.yaml
|
||||
# dependencies are safely removed from package so the cluster does
|
||||
# not have to serve 'local' repo (i.e., with ChartMuseum).
|
||||
# - helm config of setup directories and repositories is automated
|
||||
# (we don't need to create them)
|
||||
|
||||
# Stage helm-toolkit in the local repo
|
||||
cp %{helm_folder}/armada-helm-toolkit-%{toolkit_version}.tgz %{charts_staging}/helm-toolkit-%{toolkit_version}.tgz
|
||||
|
||||
# Host a local server for the charts.
|
||||
chartmuseum --debug --port=8879 --context-path='/charts' --storage="local" --storage-local-rootdir="%{charts_staging}" &
|
||||
sleep 2
|
||||
helm repo add local http://localhost:8879/charts
|
||||
|
||||
cd %{charts_staging}
|
||||
helm dependency update armada
|
||||
helm lint armada
|
||||
rm -v -f ./requirements.lock ./requirements.yaml
|
||||
helm template --set pod.resources.enabled=true armada
|
||||
helm package armada
|
||||
cd -
|
||||
|
||||
# Terminate helm server (the last backgrounded task)
|
||||
kill %1
|
||||
|
||||
%install
|
||||
install -d -m 755 ${RPM_BUILD_ROOT}/opt/extracharts
|
||||
install -p -D -m 755 %{charts_staging}/armada-*.tgz ${RPM_BUILD_ROOT}/opt/extracharts
|
||||
|
||||
%files
|
||||
%defattr(-,root,root,-)
|
||||
/opt/extracharts/*
|
||||
|
8
kubernetes/armada/centos/build_srpm.data
Normal file
8
kubernetes/armada/centos/build_srpm.data
Normal file
@ -0,0 +1,8 @@
|
||||
TAR_NAME=armada
|
||||
VERSION=0.2.0
|
||||
SHA=6cc6346cde888c683fec4df910ebefdf6dccb310
|
||||
TAR="$TAR_NAME-$SHA.tar.gz"
|
||||
|
||||
COPY_LIST="${CGCS_BASE}/downloads/$TAR $FILES_BASE/*"
|
||||
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
@ -0,0 +1,92 @@
|
||||
From 6e464edeadab3b2631775326fb12e6d6e6eb1e2a Mon Sep 17 00:00:00 2001
|
||||
From: Jim Gauld <james.gauld@windriver.com>
|
||||
Date: Mon, 1 Jun 2020 11:36:46 -0400
|
||||
Subject: [PATCH] Add Helm v2 client initialization using tiller postStart exec
|
||||
|
||||
This adds helm v2 client initialization using the tiller
|
||||
container postStart exec to access helm v2 binary.
|
||||
|
||||
This will perform 'helm init', removes the default repos
|
||||
'stable' and 'local', and add valid repos that were provided
|
||||
as overrides. Note that helm will only add repos that exist.
|
||||
|
||||
This expects overrides in this format:
|
||||
conf:
|
||||
tiller:
|
||||
charts_url: 'http://192.168.204.1:8080/helm_charts'
|
||||
repo_names:
|
||||
- 'starlingx'
|
||||
- 'stx-platform'
|
||||
repos:
|
||||
stable: https://kubernetes-charts.storage.googleapis.com
|
||||
|
||||
This gives the following result:
|
||||
helmv2-cli -- helm repo list
|
||||
NAME URL
|
||||
stable https://kubernetes-charts.storage.googleapis.com
|
||||
starlingx http://192.168.204.1:8080/helm_charts/starlingx
|
||||
stx-platform http://192.168.204.1:8080/helm_charts/stx-platform
|
||||
|
||||
Signed-off-by: Jim Gauld <james.gauld@windriver.com>
|
||||
---
|
||||
charts/armada/templates/deployment-api.yaml | 28 ++++++++++++++++++++++++++++
|
||||
charts/armada/values.yaml | 4 ++++
|
||||
2 files changed, 32 insertions(+)
|
||||
|
||||
diff --git a/charts/armada/templates/deployment-api.yaml b/charts/armada/templates/deployment-api.yaml
|
||||
index a48c8b6..ccbdb4d 100644
|
||||
--- a/charts/armada/templates/deployment-api.yaml
|
||||
+++ b/charts/armada/templates/deployment-api.yaml
|
||||
@@ -179,6 +179,34 @@ spec:
|
||||
- -trace
|
||||
{{- end }}
|
||||
lifecycle:
|
||||
+ postStart:
|
||||
+ exec:
|
||||
+ command:
|
||||
+ - sh
|
||||
+ - "-c"
|
||||
+ - |
|
||||
+ /bin/sh <<'EOF'
|
||||
+ # Delay initialization since postStart handler runs asynchronously and there
|
||||
+ # is no guarantee it is called before the Container’s entrypoint.
|
||||
+ sleep 5
|
||||
+ # Initialize Helm v2 client.
|
||||
+ export HELM_HOST=:{{ .Values.conf.tiller.port }}
|
||||
+ /helm init --client-only --skip-refresh
|
||||
+ /helm repo rm stable
|
||||
+ /helm repo rm local
|
||||
+{{- if .Values.conf.tiller.repos }}
|
||||
+ {{- range $name, $repo := .Values.conf.tiller.repos }}
|
||||
+ /helm repo add {{ $name }} {{ $repo }}
|
||||
+ {{- end }}
|
||||
+{{- end }}
|
||||
+{{- if .Values.conf.tiller.repo_names }}
|
||||
+ {{- range .Values.conf.tiller.repo_names }}
|
||||
+ /helm repo add {{ . }} {{ $envAll.Values.conf.tiller.charts_url }}/{{ . }}
|
||||
+ {{- end }}
|
||||
+{{- end }}
|
||||
+ ln -s -f /helm /tmp/helm
|
||||
+ exit 0
|
||||
+ EOF
|
||||
preStop:
|
||||
exec:
|
||||
command:
|
||||
diff --git a/charts/armada/values.yaml b/charts/armada/values.yaml
|
||||
index 4c1e603..fb3e5c2 100644
|
||||
--- a/charts/armada/values.yaml
|
||||
+++ b/charts/armada/values.yaml
|
||||
@@ -217,6 +217,10 @@ conf:
|
||||
# Note: Defaulting to the (default) kubernetes grace period, as anything
|
||||
# greater than that will have no effect.
|
||||
prestop_sleep: 30
|
||||
+ # Helm v2 initialization
|
||||
+ charts_url: null
|
||||
+ repo_names: []
|
||||
+ repos: {}
|
||||
|
||||
monitoring:
|
||||
prometheus:
|
||||
--
|
||||
1.8.3.1
|
||||
|
6
kubernetes/chartmuseum/centos/build_srpm.data
Normal file
6
kubernetes/chartmuseum/centos/build_srpm.data
Normal file
@ -0,0 +1,6 @@
|
||||
VERSION=0.12.0
|
||||
TAR_NAME=chartmuseum
|
||||
TAR="$TAR_NAME-$VERSION.tar.gz"
|
||||
COPY_LIST="${CGCS_BASE}/downloads/$TAR $STX_BASE/downloads/chartmuseum-v0.12.0-amd64"
|
||||
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
67
kubernetes/chartmuseum/centos/chartmuseum.spec
Normal file
67
kubernetes/chartmuseum/centos/chartmuseum.spec
Normal file
@ -0,0 +1,67 @@
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
# Copyright (c) 2020 Wind River Systems, Inc.
|
||||
#
|
||||
%global with_debug 0
|
||||
|
||||
%if 0%{?with_debug}
|
||||
%global _dwz_low_mem_die_limit 0
|
||||
%else
|
||||
%global debug_package %{nil}
|
||||
%endif
|
||||
|
||||
Name: chartmuseum
|
||||
Version: 0.12.0
|
||||
Release: %{tis_patch_ver}%{?_tis_dist}
|
||||
Summary: Helm Chart Repository with support for Amazon S3 and Google Cloud Storage
|
||||
Group: Kubernetes
|
||||
License: Apache-2.0
|
||||
Source0: %{name}-%{version}.tar.gz
|
||||
Source1: chartmuseum-v0.12.0-amd64
|
||||
Packager: Wind River <info@windriver.com>
|
||||
URL: https://github.com/helm/chartmuseum
|
||||
#URL: https://s3.amazonaws.com/chartmuseum
|
||||
|
||||
BuildRequires: pkgconfig(systemd)
|
||||
BuildRequires: pkgconfig(libseccomp)
|
||||
BuildRequires: systemd-devel
|
||||
BuildRequires: golang >= 1.10.0
|
||||
BuildRequires: rsync
|
||||
BuildRequires: go-md2man
|
||||
BuildRequires: go-bindata
|
||||
BuildRequires: rpm-devel >= 4.14.0
|
||||
BuildRequires: rpm-libs >= 4.14.0
|
||||
|
||||
Requires: /bin/bash
|
||||
|
||||
%define CHARTMUSEUM_DIR ${HOME}/src/github.com/helm/%{name}
|
||||
|
||||
%description
|
||||
%{summary}
|
||||
|
||||
%prep
|
||||
%setup -q -c -n %{name}
|
||||
|
||||
%build
|
||||
# NOTE: chartmuseum is only used to build helm charts, and is not
|
||||
# part of the ISO.
|
||||
# Gather the licence and readme from the source tarball.
|
||||
mkdir -v -p %{CHARTMUSEUM_DIR}
|
||||
mv -v %{name}/* %{CHARTMUSEUM_DIR}/
|
||||
mv -v %{CHARTMUSEUM_DIR}/{LICENSE,README.md} %{name}/
|
||||
pushd %{CHARTMUSEUM_DIR}
|
||||
# Stub out the make to build golang package; we are using a binary.
|
||||
#make
|
||||
popd
|
||||
|
||||
%install
|
||||
install -d %{buildroot}%{_bindir}
|
||||
install -m 755 %{SOURCE1} %{buildroot}%{_bindir}/chartmuseum
|
||||
|
||||
%files
|
||||
%defattr(-,root,root,-)
|
||||
%doc %{name}/README.md
|
||||
%license %{name}/LICENSE
|
||||
%{_bindir}/chartmuseum
|
||||
|
||||
%changelog
|
@ -3,4 +3,4 @@ COPY_LIST="${STX_BASE}/downloads/containerd-v1.3.3.tar.gz
|
||||
${STX_BASE}/downloads/crictl-v1.18.0-linux-amd64.tar.gz
|
||||
${FILES_BASE}/*"
|
||||
|
||||
TIS_PATCH_VER=1
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -12,7 +12,6 @@ Source0: containerd-v%{version}.tar.gz
|
||||
Source1: runc-1.0.0-rc10.tar.gz
|
||||
Source2: crictl-v1.18.0-linux-amd64.tar.gz
|
||||
Source3: crictl.yaml
|
||||
Source4: containerd.service
|
||||
Patch5: 0001-customize-containerd-for-StarlingX.patch
|
||||
Patch6: 0002-archive-skip-chmod-IsNotExist-error.patch
|
||||
URL: https://www.starlingx.io
|
||||
@ -77,6 +76,8 @@ popd
|
||||
# install containerd
|
||||
install -d %{buildroot}%{_bindir}
|
||||
install -p -m 755 %{CONTAINERD_DIR}/bin/containerd %{buildroot}%{_bindir}/containerd
|
||||
install -d %{buildroot}%{_prefix}/local/bin
|
||||
ln -s %{_bindir}/containerd %{buildroot}%{_prefix}/local/bin/containerd
|
||||
install -p -m 755 %{CONTAINERD_DIR}/bin/containerd-shim %{buildroot}%{_bindir}/containerd-shim
|
||||
install -p -m 755 %{CONTAINERD_DIR}/bin/containerd-shim-runc-v1 %{buildroot}%{_bindir}/containerd-shim-runc-v1
|
||||
install -p -m 755 %{CONTAINERD_DIR}/bin/containerd-shim-runc-v2 %{buildroot}%{_bindir}/containerd-shim-runc-v2
|
||||
@ -87,10 +88,11 @@ install -p -m 755 %{_builddir}/src/crictl %{buildroot}%{_bindir}/crictl
|
||||
install -d %{buildroot}%{_sysconfdir}
|
||||
install -m 644 %{_sourcedir}/crictl.yaml %{buildroot}%{_sysconfdir}/crictl.yaml
|
||||
install -d %{buildroot}%{_unitdir}
|
||||
install -p -m 644 %{_sourcedir}/containerd.service %{buildroot}%{_unitdir}/containerd.service
|
||||
install -p -m 644 %{CONTAINERD_DIR}/containerd.service %{buildroot}%{_unitdir}/containerd.service
|
||||
|
||||
# list files owned by the package here
|
||||
%files
|
||||
%{_prefix}/local/bin/containerd
|
||||
%{_bindir}/containerd
|
||||
%{_bindir}/containerd-shim
|
||||
%{_bindir}/containerd-shim-runc-v1
|
||||
|
@ -1,19 +0,0 @@
|
||||
[Unit]
|
||||
Description=containerd container runtime
|
||||
Documentation=https://containerd.io
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
ExecStartPre=-/sbin/modprobe overlay
|
||||
ExecStart=/usr/bin/containerd
|
||||
KillMode=process
|
||||
Delegate=yes
|
||||
LimitNOFILE=1048576
|
||||
# Having non-zero Limit*s causes performance problems due to accounting overhead
|
||||
# in the kernel. We recommend using cgroups to do container-local accounting.
|
||||
LimitNPROC=infinity
|
||||
LimitCORE=infinity
|
||||
TasksMax=infinity
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
@ -1,6 +1,6 @@
|
||||
VERSION=2.7.1
|
||||
TAR_NAME="docker-distribution"
|
||||
SRC_DIR="$CGCS_BASE/git/docker-distribution"
|
||||
COPY_LIST="$FILES_BASE/*"
|
||||
TAR="$TAR_NAME-v$VERSION.tar.gz"
|
||||
COPY_LIST="${CGCS_BASE}/downloads/$TAR $FILES_BASE/*"
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
||||
TIS_BASE_SRCREV=48294d928ced5dd9b378f7fd7c6f5da3ff3f2c89
|
||||
TIS_PATCH_VER=GITREVCOUNT
|
||||
|
@ -34,12 +34,12 @@
|
||||
%global shortcommit %(c=%{commit}; echo ${c:0:7})
|
||||
|
||||
Name: %{project}-%{repo}
|
||||
Version: 2.6.2
|
||||
Version: 2.7.1
|
||||
Release: 1%{?_tis_dist}.%{tis_patch_ver}
|
||||
Summary: Docker toolset to pack, ship, store, and deliver content
|
||||
License: ASL 2.0
|
||||
URL: https://%{provider_prefix}
|
||||
Source0: %{project}-%{repo}-%{version}.tar.gz
|
||||
Source0: %{project}-%{repo}-v%{version}.tar.gz
|
||||
Source1: %{name}.service
|
||||
Source2: config.yml
|
||||
BuildRequires: systemd
|
||||
@ -295,7 +295,7 @@ make test
|
||||
%else
|
||||
%doc LICENSE
|
||||
%endif
|
||||
%doc AUTHORS CONTRIBUTING.md MAINTAINERS README.md
|
||||
%doc CONTRIBUTING.md MAINTAINERS README.md
|
||||
%{_bindir}/registry
|
||||
%{_unitdir}/%{name}.service
|
||||
%dir %{_sharedstatedir}/registry
|
||||
@ -308,14 +308,14 @@ make test
|
||||
%else
|
||||
%doc LICENSE
|
||||
%endif
|
||||
%doc CONTRIBUTING.md README.md ROADMAP.md AUTHORS
|
||||
%doc CONTRIBUTING.md README.md ROADMAP.md
|
||||
%dir %{gopath}/src/%{provider}.%{provider_tld}/%{project}
|
||||
%endif
|
||||
|
||||
%if 0%{?with_unit_test} && 0%{?with_devel}
|
||||
%files unit-test -f unit-test.file-list
|
||||
%license LICENSE
|
||||
%doc CONTRIBUTING.md README.md ROADMAP.md AUTHORS
|
||||
%doc CONTRIBUTING.md README.md ROADMAP.md
|
||||
%endif
|
||||
|
||||
%changelog
|
||||
|
@ -3,4 +3,4 @@ TAR_NAME=etcd
|
||||
TAR="$TAR_NAME-v$VERSION.tar.gz"
|
||||
COPY_LIST="${CGCS_BASE}/downloads/$TAR $FILES_BASE/*"
|
||||
|
||||
TIS_PATCH_VER=1
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -1,6 +1,7 @@
|
||||
VERSION=2.13.1
|
||||
VERSION=3.2.1
|
||||
TAR_NAME=helm
|
||||
TAR="$TAR_NAME-v$VERSION-linux-amd64.tar.gz"
|
||||
COPY_LIST="${CGCS_BASE}/downloads/$TAR $FILES_BASE/*"
|
||||
|
||||
TIS_PATCH_VER=2
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
||||
|
@ -14,8 +14,9 @@
|
||||
# We want to run as the "www" user and scripts can't be setuid. The
|
||||
# sudoers permissions are set up to allow sysadmin to run this script
|
||||
# as the "www" user without a password.
|
||||
if [ $USER != "www" ]; then
|
||||
exec sudo -u www $0 $@
|
||||
WWW_ID=$(id -u www)
|
||||
if [ ${UID} -ne ${WWW_ID} ]; then
|
||||
exec sudo -u www -g www "$0" "$@"
|
||||
fi
|
||||
|
||||
|
||||
|
140
kubernetes/helm/centos/files/helmv2-cli.sh
Normal file
140
kubernetes/helm/centos/files/helmv2-cli.sh
Normal file
@ -0,0 +1,140 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Copyright (c) 2020 Wind River Systems, Inc.
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
|
||||
# This script is wrapper to Helm v2 client, providing access to containerized
|
||||
# armada/tiller managed charts.
|
||||
|
||||
# There are two modes of operation:
|
||||
# - no command specified: this is an interactive BusyBox shell
|
||||
# - command and options specified: this executes a single helm v2 command
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
# Define minimal path
|
||||
PATH=/bin:/usr/bin:/usr/local/bin
|
||||
|
||||
# Process input options
|
||||
SCRIPT=$(basename $0)
|
||||
OPTS=$(getopt -o dh --long debug,help -n ${SCRIPT} -- "$@")
|
||||
if [ $? != 0 ]; then
|
||||
echo "Failed parsing options." >&2
|
||||
exit 1
|
||||
fi
|
||||
eval set -- "$OPTS"
|
||||
|
||||
DEBUG=false
|
||||
HELP=false
|
||||
while true; do
|
||||
case "$1" in
|
||||
-d | --debug ) DEBUG=true; shift ;;
|
||||
-h | --help ) HELP=true; shift ;;
|
||||
-- ) shift; break ;;
|
||||
* ) break ;;
|
||||
esac
|
||||
done
|
||||
|
||||
# Treat remaining arguments as commands + options
|
||||
shift $((OPTIND-1))
|
||||
OTHERARGS="$@"
|
||||
|
||||
if [ ${HELP} == 'true' ]; then
|
||||
echo "Usage: ${SCRIPT} [-d|--debug] [-h|--help] -- [command] [options]"
|
||||
echo "Options:"
|
||||
echo " -d | --debug : display initialization information"
|
||||
echo " -h | --help : this help"
|
||||
echo
|
||||
echo "Command option examples:"
|
||||
echo " helmv2-cli -- helm search"
|
||||
echo " helmv2-cli -- helm list"
|
||||
echo " helmv2-cli -- helm list --namespace openstack --pending"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Logger setup
|
||||
LOG_FACILITY=user
|
||||
LOG_PRIORITY=info
|
||||
function LOG {
|
||||
logger -t "${0##*/}[$$]" -p ${LOG_FACILITY}.${LOG_PRIORITY} "$@"
|
||||
echo "${0##*/}[$$]" "$@"
|
||||
}
|
||||
function ERROR {
|
||||
MSG="ERROR"
|
||||
LOG "${MSG} $@"
|
||||
}
|
||||
|
||||
# Determine running armada pods, including list of status conditions
|
||||
# This jsonpath gives the following output format per pod:
|
||||
# armada-api-bc77f956d-jwl4n::Initialized=True:Ready=True:ContainersReady=True:PodScheduled=True
|
||||
JSONPATH='{range .items[*]}{"\n"}{@.metadata.name}:{@.metadata.deletionTimestamp}{range @.status.conditions[*]}{":"}{@.type}={@.status}{end}{end}'
|
||||
ARMADA_PODS=( $(kubectl get pods -n armada \
|
||||
--selector=application=armada,component=api \
|
||||
--field-selector status.phase=Running \
|
||||
--output=jsonpath="${JSONPATH}") )
|
||||
if [ ${#ARMADA_PODS[@]} -eq 0 ]; then
|
||||
ERROR "Could not find armada pod."
|
||||
exit 1
|
||||
fi
|
||||
if [ ${DEBUG} == 'true' ]; then
|
||||
LOG "Found armada pods: ${ARMADA_PODS[@]}"
|
||||
fi
|
||||
|
||||
# Get first available Running and Ready armada pod, with tiller container we can exec
|
||||
POD=""
|
||||
for LINE in "${ARMADA_PODS[@]}"; do
|
||||
# match only Ready pods with nil deletionTimestamp
|
||||
if [[ $LINE =~ ::.*Ready=True ]]; then
|
||||
# extract pod name, it is first element delimited by :
|
||||
A=( ${LINE/:/ } )
|
||||
P=${A[0]}
|
||||
else
|
||||
continue
|
||||
fi
|
||||
|
||||
kubectl exec -it -n armada ${P} -c tiller -- pwd 1>/dev/null 2>/dev/null
|
||||
RC=$?
|
||||
if [ ${RC} -eq 0 ]; then
|
||||
POD=${P}
|
||||
break
|
||||
fi
|
||||
done
|
||||
if [ -z "${POD}" ]; then
|
||||
ERROR "Could not find armada pod."
|
||||
exit 1
|
||||
fi
|
||||
if [ ${DEBUG} == 'true' ]; then
|
||||
LOG "Found armada pod: ${POD}"
|
||||
fi
|
||||
|
||||
# Determine tiller listen port (configured by armada chart)
|
||||
# armada-api is container index 0, tiller is container index 1
|
||||
TILLER_PORT=$(kubectl get pod -n armada ${POD} \
|
||||
--output=jsonpath={.spec.containers[1].ports[0].containerPort})
|
||||
if [ -z "${TILLER_PORT}" ]; then
|
||||
ERROR "Could not find tiller listen port."
|
||||
exit 1
|
||||
fi
|
||||
if [ ${DEBUG} == 'true' ]; then
|
||||
LOG "Found tiller listen port: ${TILLER_PORT}"
|
||||
fi
|
||||
|
||||
# Launch BusyBox shell with access to local tiller.
|
||||
# Can execute helm v2 commands as '/helm' or 'helm'.
|
||||
if [ ${DEBUG} == 'true' ]; then
|
||||
LOG "Launching Helm-v2 client"
|
||||
fi
|
||||
HELM_HOST=":${TILLER_PORT}"
|
||||
if [ -z "${OTHERARGS}" ]; then
|
||||
# Interactive BusyBox shell
|
||||
kubectl exec -it -n armada ${POD} -c tiller -- \
|
||||
/bin/sh -c "PATH=${PATH}:/tmp PS1='Helm-v2 \h:\w $ ' HELM_HOST=${HELM_HOST} /bin/sh"
|
||||
else
|
||||
# Execute single helm v2 command in BusyBox shell
|
||||
kubectl exec -n armada ${POD} -c tiller -- \
|
||||
/bin/sh -c "PATH=${PATH}:/tmp HELM_HOST=${HELM_HOST} /bin/sh -c '$OTHERARGS'"
|
||||
fi
|
||||
|
||||
exit 0
|
@ -1,7 +1,7 @@
|
||||
Name: helm
|
||||
Version: 2.13.1
|
||||
Version: 3.2.1
|
||||
Release: 0%{?_tis_dist}.%{tis_patch_ver}
|
||||
Summary: The Kubernetes Package Manager
|
||||
Summary: The Kubernetes Package Manager
|
||||
License: Apache-2.0
|
||||
Group: devel
|
||||
Packager: Wind River <info@windriver.com>
|
||||
@ -9,6 +9,7 @@ URL: https://github.com/kubernetes/helm/releases
|
||||
Source0: %{name}-v%{version}-linux-amd64.tar.gz
|
||||
Source1: helm-upload
|
||||
Source2: helm.sudo
|
||||
Source3: helmv2-cli.sh
|
||||
|
||||
Requires: /bin/bash
|
||||
|
||||
@ -23,6 +24,7 @@ install -d %{buildroot}%{_sbindir}
|
||||
install -m 755 ${RPM_BUILD_DIR}/linux-amd64/helm %{buildroot}%{_sbindir}/helm
|
||||
install -d %{buildroot}/usr/local/sbin
|
||||
install -m 755 %{SOURCE1} %{buildroot}/usr/local/sbin/helm-upload
|
||||
install -m 755 %{SOURCE3} %{buildroot}/usr/local/sbin/helmv2-cli
|
||||
install -d %{buildroot}%{_sysconfdir}/sudoers.d
|
||||
install -m 440 %{SOURCE2} %{buildroot}%{_sysconfdir}/sudoers.d/helm
|
||||
|
||||
@ -30,4 +32,5 @@ install -m 440 %{SOURCE2} %{buildroot}%{_sysconfdir}/sudoers.d/helm
|
||||
%defattr(-,root,root,-)
|
||||
%{_sbindir}/helm
|
||||
/usr/local/sbin/helm-upload
|
||||
/usr/local/sbin/helmv2-cli
|
||||
%{_sysconfdir}/sudoers.d/helm
|
||||
|
4
kubernetes/k8s-pod-recovery/centos/build_srpm.data
Normal file
4
kubernetes/k8s-pod-recovery/centos/build_srpm.data
Normal file
@ -0,0 +1,4 @@
|
||||
SRC_DIR="."
|
||||
COPY_LIST="$FILES_BASE/*"
|
||||
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
276
kubernetes/k8s-pod-recovery/centos/files/k8s-pod-recovery
Executable file
276
kubernetes/k8s-pod-recovery/centos/files/k8s-pod-recovery
Executable file
@ -0,0 +1,276 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# Copyright (c) 2020 Wind River Systems, Inc.
|
||||
#
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
#
|
||||
|
||||
#
|
||||
# chkconfig: 2345 76 25
|
||||
#
|
||||
### BEGIN INIT INFO
|
||||
# Provides: k8s-pod-recovery
|
||||
# Default-Start: 3 5
|
||||
# Required-Start:
|
||||
# Required-Stop:
|
||||
# Default-Stop: 0 1 2 6
|
||||
# Short-Description: Service to recovery pods after host boot
|
||||
### END INIT INFO
|
||||
|
||||
. /etc/platform/platform.conf
|
||||
|
||||
export PATH=/sbin:/usr/sbin:/bin:/usr/bin:/usr/local/bin
|
||||
export KUBECONFIG=/etc/kubernetes/admin.conf
|
||||
SLEEP_DELAY_SEC=15
|
||||
|
||||
NAME=$(basename $0)
|
||||
PIDFILE=/var/run/${NAME}.pid
|
||||
HOST=$(hostname)
|
||||
|
||||
# Log info message to /var/log/daemon.log
|
||||
function LOG {
|
||||
logger -p daemon.info -t "${NAME}($$): " "$@"
|
||||
}
|
||||
|
||||
# Log error message to /var/log/daemon.log
|
||||
function ERROR {
|
||||
logger -p daemon.error -t "${NAME}($$): " "$@"
|
||||
}
|
||||
|
||||
function _check_for_k8s_config {
|
||||
# If this node has not been configured, then there is nothing to recovery
|
||||
if [ ! -f ${KUBECONFIG} ]; then
|
||||
LOG "${KUBECONFIG} does not exist. No pods to recover."
|
||||
exit 0
|
||||
fi
|
||||
}
|
||||
|
||||
function _check_for_existing_process {
|
||||
# Abort if another instantiation is already running
|
||||
if [ -e ${PIDFILE} ]; then
|
||||
PID=$(cat ${PIDFILE})
|
||||
PROCESS=$(cat /proc/${PID}/comm)
|
||||
if [ -n "${PID}" -a -e /proc/${PID} -a ${PROCESS} == ${NAME} ]; then
|
||||
ERROR "Aborting, ${PID} already running: ${PIDFILE}."
|
||||
exit 1
|
||||
else
|
||||
OUT=$(rm -v -f ${PIDFILE})
|
||||
LOG "${OUT}"
|
||||
fi
|
||||
fi
|
||||
|
||||
# Create pidfile to indicate the script is running
|
||||
echo $$ > ${PIDFILE}
|
||||
}
|
||||
|
||||
function _wait_for_systemd {
|
||||
while true; do
|
||||
if systemctl is-system-running | grep -q -e running -e degraded; then
|
||||
break
|
||||
fi
|
||||
LOG "Waiting for systemd to finish booting..."
|
||||
sleep ${SLEEP_DELAY_SEC}
|
||||
done
|
||||
}
|
||||
|
||||
function _wait_for_pod_stabilization {
|
||||
last_count=0
|
||||
stability_count=0
|
||||
NINETY_SEC_COUNT=$((90/SLEEP_DELAY_SEC))
|
||||
while true ; do
|
||||
pods_in_flux=$(KUBECONFIG=/etc/kubernetes/admin.conf kubectl get pods --no-headers --all-namespaces | grep -v -e Running -e Completed | wc -l)
|
||||
if [[ $pods_in_flux -ne $last_count ]]; then
|
||||
LOG "Waiting on pod transitions to stabilize... $pods_in_flux pods are not Running/Completed"
|
||||
last_count=$pods_in_flux
|
||||
stability_count=0
|
||||
else
|
||||
LOG "Pods transitions are stable... for $((stability_count*${SLEEP_DELAY_SEC})) seconds."
|
||||
if [[ $stability_count -eq $NINETY_SEC_COUNT ]]; then
|
||||
break
|
||||
fi
|
||||
stability_count=$((stability_count+1))
|
||||
fi
|
||||
sleep ${SLEEP_DELAY_SEC}
|
||||
done
|
||||
}
|
||||
|
||||
function _unknown_pods {
|
||||
# $1: actions <recover|verify>
|
||||
|
||||
# Target specific namespaces and pods on this host
|
||||
SUPPORTED_NAMESPACES=('openstack' 'monitor')
|
||||
|
||||
if [ "$1" == 'recover' ]; then
|
||||
# Recovers pods that are: Running/Unknown and Pending/Init:Unknown
|
||||
for ns in ${SUPPORTED_NAMESPACES[@]}; do
|
||||
PODS=$(kubectl get pods -n $ns --field-selector spec.nodeName=${HOST} 2>/dev/null | awk /Unknown/'{print $1}')
|
||||
for pod in $PODS ; do
|
||||
LOG "Unknown pods: Recovering: $ns/$pod"
|
||||
kubectl delete pods -n $ns $pod --wait=false
|
||||
done
|
||||
done
|
||||
elif [ "$1" == 'verify' ]; then
|
||||
for ns in ${SUPPORTED_NAMESPACES[@]}; do
|
||||
PODS=$(kubectl get pods -n $ns --field-selector spec.nodeName=${HOST} 2>/dev/null | awk /Unknown/'{print $1}')
|
||||
if [ -z "${PODS}" ]; then
|
||||
LOG "Unknown pods: None present for namespace: $ns"
|
||||
else
|
||||
ERROR "Unknown pods: still present for namespace: $ns"
|
||||
fi
|
||||
done
|
||||
else
|
||||
ERROR "Unknown action: $1"
|
||||
fi
|
||||
}
|
||||
|
||||
function _node_affinity_pods {
|
||||
# $1: actions <recover|verify>
|
||||
|
||||
if [ "$1" == 'recover' ]; then
|
||||
PODS=$(kubectl get pods --all-namespaces --field-selector status.phase=Failed,spec.nodeName=${HOST} 2>/dev/null | awk /NodeAffinity/'{print $1"/"$2}')
|
||||
for pod in $PODS ; do
|
||||
LOG "NodeAffinity pods: Recovering: $pod"
|
||||
kubectl delete pods -n ${pod//// } --wait=false
|
||||
done
|
||||
elif [ "$1" == 'verify' ]; then
|
||||
PODS=$(kubectl get pods --all-namespaces --field-selector status.phase=Failed,spec.nodeName=${HOST} 2>/dev/null | awk /NodeAffnity/'{print $1"/"$2}')
|
||||
if [ -z "${PODS}" ]; then
|
||||
LOG "NodeAffinity pods: None present."
|
||||
else
|
||||
ERROR "NodeAffinity pods: still present"
|
||||
fi
|
||||
else
|
||||
ERROR "Unknown action: $1"
|
||||
fi
|
||||
|
||||
}
|
||||
|
||||
function _labeled_pods {
|
||||
# $1: actions <recover|verify>
|
||||
|
||||
# Delete pods with the restart-on-reboot=true label
|
||||
PODS=$(kubectl get pods --all-namespaces --no-headers --field-selector=spec.nodeName=${HOST} --selector=restart-on-reboot=true 2>/dev/null | awk '{print $1"/"$2}')
|
||||
|
||||
if [ "$1" == 'recover' ]; then
|
||||
for pod in $PODS; do
|
||||
LOG "restart-on-reboot labeled pods: Recovering: ${pod//// }"
|
||||
kubectl delete pods -n ${pod//// } --wait=false
|
||||
done
|
||||
elif [ "$1" == 'verify' ]; then
|
||||
for pod in $PODS; do
|
||||
LOG "restart-on-reboot labeled pods: Verifying: ${pod//// }"
|
||||
STATUS=$(kubectl get pod --no-headers -n ${pod//// } 2>/dev/null | awk '{print $3}')
|
||||
if [[ "${STATUS}" != "Running" ]]; then
|
||||
ERROR "$pod: not recovered: $STATUS"
|
||||
else
|
||||
LOG "$pod: recovered"
|
||||
fi
|
||||
done
|
||||
else
|
||||
ERROR "Unknown action: $1"
|
||||
fi
|
||||
}
|
||||
|
||||
function _force_reset_pods {
|
||||
# $1: actions <recover|verify>
|
||||
|
||||
# Handle resetting openstack libvirt pod as it sometimes is in a Running but
|
||||
# unusable state
|
||||
if kubectl get namespace openstack > /dev/null 2>&1; then
|
||||
|
||||
# Get the libvirt pods on this host that are Running without all
|
||||
# conditions True
|
||||
#
|
||||
# Conditions:
|
||||
# Initialized True
|
||||
# Ready True
|
||||
# ContainersReady True
|
||||
# PodScheduled True
|
||||
#
|
||||
# NAME STATUS CONDITIONS NODE
|
||||
# libvirt-libvirt-controller-0-937646f6-xst4r Running True,True,True,True controller-0
|
||||
#
|
||||
CUSTOM_COLUMNS='custom-columns=NAME:.metadata.name,STATUS:status.phase,CONDITIONS:status.conditions[*].status,NODE:spec.nodeName'
|
||||
FIELD_SELECTOR="spec.nodeName=${HOST}"
|
||||
PODS=$(kubectl get pods -n openstack -l application=libvirt --field-selector ${FIELD_SELECTOR} -o ${CUSTOM_COLUMNS} | grep -v NAME | grep -v 'True,True,True,True' | awk '{print $1}')
|
||||
|
||||
if [ "$1" == 'recover' ]; then
|
||||
for pod in $PODS ; do
|
||||
LOG "Recovering libvirt pod: $pod"
|
||||
kubectl delete pods -n openstack $pod --wait=false
|
||||
done
|
||||
elif [ "$1" == 'verify' ]; then
|
||||
if [ -z "${PODS}" ]; then
|
||||
LOG "Openstack libvirt pod on ${HOST} is running."
|
||||
else
|
||||
ERROR "Openstack libvirt pod on ${HOST} has not been recovered."
|
||||
fi
|
||||
else
|
||||
ERROR "Unknown action: $1"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
function _examine_pods {
|
||||
# $1: actions <recover|verify>
|
||||
|
||||
# No need to wait for pod transitions if we know the pod needs to be restarted
|
||||
_labeled_pods $1
|
||||
|
||||
# Wait for pods transitions to stop
|
||||
_wait_for_pod_stabilization
|
||||
|
||||
# Check for recovery actions
|
||||
_unknown_pods $1
|
||||
_node_affinity_pods $1
|
||||
_force_reset_pods $1
|
||||
}
|
||||
|
||||
|
||||
function start {
|
||||
_check_for_k8s_config
|
||||
_check_for_existing_process
|
||||
|
||||
LOG "Starting."
|
||||
|
||||
_wait_for_systemd
|
||||
_examine_pods 'recover'
|
||||
_examine_pods 'verify'
|
||||
}
|
||||
|
||||
function stop {
|
||||
LOG "Stopping."
|
||||
}
|
||||
|
||||
function status {
|
||||
:
|
||||
}
|
||||
|
||||
function reset {
|
||||
:
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
start
|
||||
;;
|
||||
stop)
|
||||
stop
|
||||
;;
|
||||
restart|force-reload|reload)
|
||||
stop
|
||||
start
|
||||
;;
|
||||
status)
|
||||
status
|
||||
;;
|
||||
reset)
|
||||
reset
|
||||
;;
|
||||
*)
|
||||
echo "Usage: $0 {start|stop|force-reload|restart|reload|status|reset}"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
exit 0
|
@ -0,0 +1,14 @@
|
||||
[Unit]
|
||||
Description=Kubernetes Pods Recovery Service
|
||||
After=sw-patch.service
|
||||
After=kubelet.service
|
||||
Requires=kubelet.service
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
ExecStart=/usr/local/sbin/k8s-pod-recovery start
|
||||
ExecStop=/usr/local/sbin/k8s-pod-recovery stop
|
||||
PIDFile=/var/run/k8s-pod-recovery.pid
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
52
kubernetes/k8s-pod-recovery/centos/k8s-pod-recovery.spec
Normal file
52
kubernetes/k8s-pod-recovery/centos/k8s-pod-recovery.spec
Normal file
@ -0,0 +1,52 @@
|
||||
Name: k8s-pod-recovery
|
||||
Version: 1.0
|
||||
Release: 0%{?_tis_dist}.%{tis_patch_ver}
|
||||
Summary: Kubernetes Pod Recovery Service
|
||||
License: Apache-2.0
|
||||
Group: base
|
||||
Packager: Wind River <info@windriver.com>
|
||||
URL: unknown
|
||||
Source0: k8s-pod-recovery
|
||||
Source1: k8s-pod-recovery.service
|
||||
|
||||
Requires: /bin/bash
|
||||
Requires: systemd
|
||||
|
||||
%description
|
||||
%{summary}
|
||||
|
||||
%define local_dir /usr/local
|
||||
%define local_sbindir %{local_dir}/sbin
|
||||
|
||||
%prep
|
||||
|
||||
%install
|
||||
install -d %{buildroot}%{local_sbindir}
|
||||
install -m 755 %{SOURCE0} %{buildroot}%{local_sbindir}/k8s-pod-recovery
|
||||
install -p -D -m 644 %{SOURCE1} %{buildroot}%{_unitdir}/k8s-pod-recovery.service
|
||||
|
||||
%post
|
||||
if [ $1 -eq 1 ]; then
|
||||
# Package install: enable and start it
|
||||
/usr/bin/systemctl enable k8s-pod-recovery.service > /dev/null 2>&1 || :
|
||||
/usr/bin/systemctl start k8s-pod-recovery.service > /dev/null 2>&1 || :
|
||||
else
|
||||
# Package upgrade: reenable in case [Install] changes and restart to pick up
|
||||
# new actions
|
||||
if /usr/bin/systemctl --quiet is-enabled k8s-pod-recovery.service ; then
|
||||
/usr/bin/systemctl reenable k8s-pod-recovery.service > /dev/null 2>&1 || :
|
||||
/usr/bin/systemctl restart k8s-pod-recovery.service > /dev/null 2>&1 || :
|
||||
fi
|
||||
fi
|
||||
|
||||
%preun
|
||||
if [ $1 -eq 0 ]; then
|
||||
/usr/bin/systemctl stop k8s-pod-recovery.service > /dev/null 2>&1 || :
|
||||
/usr/bin/systemctl disable k8s-pod-recovery.service > /dev/null 2>&1 || :
|
||||
fi
|
||||
|
||||
|
||||
%files
|
||||
%defattr(-,root,root,-)
|
||||
%{local_sbindir}/k8s-pod-recovery
|
||||
%{_unitdir}/k8s-pod-recovery.service
|
@ -6,4 +6,4 @@ CONTRIB="$TAR_NAME-contrib-v$CON_VERSION.tar.gz"
|
||||
|
||||
COPY_LIST="${CGCS_BASE}/downloads/$TAR ${CGCS_BASE}/downloads/$CONTRIB $FILES_BASE/*"
|
||||
|
||||
TIS_PATCH_VER=2
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -0,0 +1,15 @@
|
||||
diff --git a/contrib/init/systemd/kubelet.service b/contrib/init/systemd/kubelet.service
|
||||
index 1082bba..1fae395 100644
|
||||
--- a/contrib/init/systemd/kubelet.service
|
||||
+++ b/contrib/init/systemd/kubelet.service
|
||||
@@ -1,8 +1,8 @@
|
||||
[Unit]
|
||||
Description=Kubernetes Kubelet Server
|
||||
Documentation=https://kubernetes.io/docs/concepts/overview/components/#kubelet https://kubernetes.io/docs/reference/generated/kubelet/
|
||||
-After=docker.service
|
||||
-Requires=docker.service
|
||||
+Wants=network-online.target
|
||||
+After=network-online.target
|
||||
|
||||
[Service]
|
||||
WorkingDirectory=/var/lib/kubelet
|
@ -56,6 +56,7 @@ Source5: kubelet-cgroup-setup.sh
|
||||
Source33: genmanpages.sh
|
||||
|
||||
Patch1: 0001-Fix-pagesize-check-to-allow-for-options-already-endi.patch
|
||||
Patch2: kubelet-service-remove-docker-dependency.patch
|
||||
|
||||
# It obsoletes cadvisor but needs its source code (literally integrated)
|
||||
Obsoletes: cadvisor
|
||||
@ -844,6 +845,7 @@ Kubernetes client tools like kubectl
|
||||
# copy contrib folder
|
||||
mkdir contrib
|
||||
cp -r ../%{con_repo}-%{con_commit}/init contrib/.
|
||||
%patch2 -p1
|
||||
|
||||
#src/k8s.io/kubernetes/pkg/util/certificates
|
||||
# Patch the code to remove eliptic.P224 support
|
||||
|
@ -1,3 +1,3 @@
|
||||
COPY_LIST="files/* \
|
||||
$CGCS_BASE/downloads/ldapscripts-2.0.8.tgz"
|
||||
TIS_PATCH_VER=2
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -1,2 +1,2 @@
|
||||
TIS_PATCH_VER=1
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
BUILD_IS_SLOW=3
|
||||
|
@ -1 +1 @@
|
||||
TIS_PATCH_VER=4
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -1,4 +1,4 @@
|
||||
COPY_LIST="$CGCS_BASE/downloads/lldpd-0.9.0.tar.gz \
|
||||
$PKG_BASE/lldpd-0.9.0/* \
|
||||
$PKG_BASE/centos/files/*"
|
||||
TIS_PATCH_VER=5
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -1,2 +1,2 @@
|
||||
COPY_LIST="files/*"
|
||||
TIS_PATCH_VER=1
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
|
@ -2,5 +2,5 @@ COPY_LIST="files/* \
|
||||
$PATCHES_BASE/* \
|
||||
$STX_BASE/downloads/openvswitch-2.11.0.tar.gz \
|
||||
$STX_BASE/downloads/dpdk-18.11.tar.xz"
|
||||
TIS_PATCH_VER=1
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
||||
BUILD_IS_SLOW=12
|
||||
|
@ -1,4 +1,4 @@
|
||||
TAR_NAME=python-ryu
|
||||
SRC_DIR="$CGCS_BASE/git/ryu"
|
||||
TIS_BASE_SRCREV=51a1130f6cdcb029a51b6a75d43ac5e4cdde7072
|
||||
TIS_PATCH_VER=GITREVCOUNT
|
||||
TIS_PATCH_VER=GITREVCOUNT+PKG_GITREVCOUNT
|
||||
|
@ -46,11 +46,12 @@ load-plugins=
|
||||
# W0622 redefined-builtin
|
||||
# W0702 bare-except
|
||||
# W0703 broad except warning
|
||||
# W0707 raise-missing-from
|
||||
# W1201 logging-not-lazy
|
||||
# W1401 anomalous-backslash-in-string
|
||||
disable=C, R, E0203, E0602, E1101, E1205, fixme,
|
||||
W0102, W0105, W0106, W0201, W0212, W0221, W0231, W0235,
|
||||
W0611, W0612, W0613, W0621, W0622, W0702, W0703, W1201, W1401
|
||||
W0611, W0612, W0613, W0621, W0622, W0702, W0703, W0707, W1201, W1401
|
||||
|
||||
|
||||
[REPORTS]
|
||||
|
1
python/python-daemon/centos/build_srpm.data
Normal file
1
python/python-daemon/centos/build_srpm.data
Normal file
@ -0,0 +1 @@
|
||||
TIS_PATCH_VER=PKG_GITREVCOUNT
|
@ -0,0 +1,66 @@
|
||||
From 1539089bcd70852304a630e56516f21645d94484 Mon Sep 17 00:00:00 2001
|
||||
From: SidneyAn <ran1.an@intel.com>
|
||||
Date: Fri, 3 Apr 2020 06:51:41 +0000
|
||||
Subject: using el7 python3 dep pkgs
|
||||
|
||||
using el7 pkgs as python3 dep instead of el8 ones
|
||||
unit tests are also disabled to reduce the python3 deps
|
||||
which is not supported by el7
|
||||
|
||||
Signed-off-by: SidneyAn <ran1.an@intel.com>
|
||||
---
|
||||
SPECS/python-daemon.spec | 16 ++++++++--------
|
||||
1 file changed, 8 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/SPECS/python-daemon.spec b/SPECS/python-daemon.spec
|
||||
index 97e1cb2..686228e 100644
|
||||
--- a/SPECS/python-daemon.spec
|
||||
+++ b/SPECS/python-daemon.spec
|
||||
@@ -1,7 +1,7 @@
|
||||
%{?python_enable_dependency_generator}
|
||||
Name: python-daemon
|
||||
Version: 2.2.3
|
||||
-Release: 7%{?dist}
|
||||
+Release: 7.el8%{?_tis_dist}.%{tis_patch_ver}
|
||||
Summary: Library to implement a well-behaved Unix daemon process
|
||||
|
||||
# Some build scripts and test franework are licensed GPLv3+ but htose aren't shipped
|
||||
@@ -15,11 +15,11 @@ Patch1: 0001-Mock-the-.__class__-attribute-so-tests-pass-in-py2.patch
|
||||
|
||||
BuildArch: noarch
|
||||
BuildRequires: python3-devel, python3-setuptools
|
||||
-BuildRequires: python3-testscenarios
|
||||
-BuildRequires: python3-docutils
|
||||
+#BuildRequires: python3-testscenarios
|
||||
+BuildRequires: python36-docutils
|
||||
BuildRequires: python3-lockfile
|
||||
-BuildRequires: python3-mock
|
||||
-BuildRequires: python3-testtools
|
||||
+BuildRequires: python36-mock
|
||||
+#BuildRequires: python3-testtools
|
||||
|
||||
%global _description\
|
||||
This library implements the well-behaved daemon specification of PEP 3143,\
|
||||
@@ -32,8 +32,8 @@ This is the python2 version of the library.
|
||||
%package -n python3-daemon
|
||||
Summary: Library to implement a well-behaved Unix daemon process
|
||||
Requires: python3-lockfile
|
||||
-Requires: python3-docutils
|
||||
-%{?python_provide:%python_provide python3-daemon}
|
||||
+Requires: python36-docutils
|
||||
+%{?python_provide:%python_provide python%{python3_pkgversion}-daemon}
|
||||
|
||||
%description -n python3-daemon %_description
|
||||
|
||||
@@ -51,7 +51,7 @@ rm -fr %{buildroot}%{python3_sitelib}/tests
|
||||
|
||||
# Test suite requires minimock and lockfile
|
||||
%check
|
||||
-PYTHONPATH=$(pwd) %{__python3} -m unittest discover
|
||||
+#PYTHONPATH=$(pwd) %{__python3} -m unittest discover
|
||||
|
||||
%files -n python3-daemon
|
||||
%license LICENSE.ASF-2
|
||||
--
|
||||
2.7.4
|
||||
|
1
python/python-daemon/centos/meta_patches/PATCH_ORDER
Normal file
1
python/python-daemon/centos/meta_patches/PATCH_ORDER
Normal file
@ -0,0 +1 @@
|
||||
0001-using-el7-python3-dep-pkgs.patch
|
1
python/python-daemon/centos/srpm_path
Normal file
1
python/python-daemon/centos/srpm_path
Normal file
@ -0,0 +1 @@
|
||||
mirror:Source/python-daemon-2.2.3-7.el8.src.rpm
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user