Merge "Various gate fixes to make gate green"

This commit is contained in:
Zuul 2019-08-01 19:46:36 +00:00 committed by Gerrit Code Review
commit d3b1a5c985
5 changed files with 40 additions and 16 deletions

View File

@ -23,19 +23,17 @@
- ^.*\.rst$ - ^.*\.rst$
- ^doc/.*$ - ^doc/.*$
- ^releasenotes/.*$ - ^releasenotes/.*$
voting: false
- airship-divingbell-chart-build-gate - airship-divingbell-chart-build-gate
- airship-divingbell-chart-build-latest-htk - airship-divingbell-chart-build-latest-htk
gate: gate:
jobs: jobs:
- airship-divingbell-linter - airship-divingbell-linter
- airship-divingbell-chart-build-gate - airship-divingbell-chart-build-gate
# NOTE(portdirect): enable when voting enabled. - airship-divingbell-ubuntu:
# - airship-divingbell-ubuntu: irrelevant-files:
# irrelevant-files: - ^.*\.rst$
# - ^.*\.rst$ - ^doc/.*$
# - ^doc/.*$ - ^releasenotes/.*$
# - ^releasenotes/.*$
post: post:
jobs: jobs:

View File

@ -52,6 +52,11 @@ spec:
mountPath: /tmp/{{ $daemonset }}.sh mountPath: /tmp/{{ $daemonset }}.sh
subPath: {{ $daemonset }} subPath: {{ $daemonset }}
readOnly: true readOnly: true
# adduser function hangs immediately on getent/useradd without security context
# TODO: investigate which linux capabilities should be whitelisted so blanket security
# context may be removed
securityContext:
privileged: true
volumes: volumes:
- name: rootfs-{{ $daemonset }} - name: rootfs-{{ $daemonset }}
hostPath: hostPath:

View File

@ -48,10 +48,12 @@ USERNAME3_SUDO=true
USERNAME4=userfour USERNAME4=userfour
USERNAME4_SUDO=false USERNAME4_SUDO=false
APT_PACKAGE1=python-pbr APT_PACKAGE1=python-pbr
APT_VERSION1=1.8.0-4ubuntu1 # Pick an available version in the package repo
APT_VERSION1="$(apt-cache show $APT_PACKAGE1 | grep Version: | tail -1 | awk '{print $2}')"
APT_PACKAGE2=mysql-server APT_PACKAGE2=mysql-server
APT_PACKAGE3=python-simplejson APT_PACKAGE3=python-simplejson
APT_VERSION3=3.8.1-1ubuntu2 # Pick an available version in the package repo
APT_VERSION3="$(apt-cache show $APT_PACKAGE3 | grep Version: | tail -1 | awk '{print $2}')"
APT_PACKAGE4=less APT_PACKAGE4=less
APT_PACKAGE5=python-setuptools APT_PACKAGE5=python-setuptools
APT_PACKAGE6=telnetd APT_PACKAGE6=telnetd
@ -381,7 +383,7 @@ get_container_status(){
local container_runtime_sleep_interval=5 local container_runtime_sleep_interval=5
wait_time=0 wait_time=0
while : ; do while : ; do
CLOGS="$(kubectl logs --namespace="${NAME}" "${container}" 2>&1)" CLOGS="$(kubectl logs --namespace="${NAME}" "${container}" 2>&1)" || true
local status="$(echo "${CLOGS}" | tail -1)" local status="$(echo "${CLOGS}" | tail -1)"
if [[ $(echo -e ${status} | tr -d '[:cntrl:]') = *ERROR* ]] || if [[ $(echo -e ${status} | tr -d '[:cntrl:]') = *ERROR* ]] ||
[[ $(echo -e ${status} | tr -d '[:cntrl:]') = *TRACE* ]]; then [[ $(echo -e ${status} | tr -d '[:cntrl:]') = *TRACE* ]]; then
@ -1869,9 +1871,21 @@ test_overrides(){
echo '[SUCCESS] overrides test 6 passed successfully' >> "${TEST_RESULTS}" || echo '[SUCCESS] overrides test 6 passed successfully' >> "${TEST_RESULTS}" ||
(echo '[FAILURE] overrides test 6 failed' && exit 1) (echo '[FAILURE] overrides test 6 failed' && exit 1)
# The core functional test to ensure that overrides work.
# fooKey was added to catch a corner case identified by:
# https://storyboard.openstack.org/#!/story/2005936
# If fooHost keys are leaking into this host's values, then this test
# will fail when sysctl attempts to set the non-existant fooKey.
overrides_yaml=${LOGS_SUBDIR}/${FUNCNAME}-functional.yaml overrides_yaml=${LOGS_SUBDIR}/${FUNCNAME}-functional.yaml
key1_override_val=0 key1_override_val=0
key2_non_override_val=0 key2_non_override_val=0
kube_hostname="$(kubectl describe nodes | grep kubernetes.io/hostname | head -1 | cut -d'=' -f2)" || true
if [[ -z $kube_hostname ]]; then
fallback_kube_hostname=minikube
echo "[WARNING] Failed to get kubectl hostname, falling back to default $fallback_kube_hostname"
echo "This test will fail if the kubernetes.io/hostname does not map to the node running this instance of k8s."
kube_hostname="$fallback_kube_hostname"
fi
echo "conf: echo "conf:
sysctl: sysctl:
$SYSCTL_KEY1: 1 $SYSCTL_KEY1: 1
@ -1879,13 +1893,18 @@ test_overrides(){
overrides: overrides:
divingbell_sysctl: divingbell_sysctl:
hosts: hosts:
- name: $(hostname -f) - name: fooHost
conf:
sysctl:
fooKey: fooVal
- name: $kube_hostname
conf: conf:
sysctl: sysctl:
$SYSCTL_KEY1: $key1_override_val" > "${overrides_yaml}" $SYSCTL_KEY1: $key1_override_val" > "${overrides_yaml}"
install_base "--values=${overrides_yaml}" install_base "--values=${overrides_yaml}"
get_container_status sysctl get_container_status sysctl
_test_sysctl_default $SYSCTL_KEY1 $key1_override_val _test_sysctl_default $SYSCTL_KEY1 $key1_override_val || \
(echo '[FAILURE] overrides test 7 failed, most likely someone broke openstack-helm-infra/helm-toolkit/templates/utils/_daemonset_overrides.tpl' && exit 1)
_test_sysctl_default $SYSCTL_KEY2 $key2_non_override_val _test_sysctl_default $SYSCTL_KEY2 $key2_non_override_val
echo '[SUCCESS] overrides test 7 passed successfully' >> "${TEST_RESULTS}" echo '[SUCCESS] overrides test 7 passed successfully' >> "${TEST_RESULTS}"

View File

@ -17,7 +17,7 @@
set -x set -x
HELM=$1 HELM=$1
HELM_ARTIFACT_URL=${HELM_ARTIFACT_URL:-"https://storage.googleapis.com/kubernetes-helm/helm-v2.13.1-linux-amd64.tar.gz"} HELM_ARTIFACT_URL=${HELM_ARTIFACT_URL:-"https://storage.googleapis.com/kubernetes-helm/helm-v2.14.1-linux-amd64.tar.gz"}
function install_helm_binary { function install_helm_binary {

View File

@ -18,7 +18,7 @@
HELM=$1 HELM=$1
HTK_REPO=${HTK_REPO:-"https://github.com/openstack/openstack-helm-infra"} HTK_REPO=${HTK_REPO:-"https://github.com/openstack/openstack-helm-infra"}
HTK_PATH=${HTK_PATH:-""} HTK_PATH=${HTK_PATH:-""}
HTK_STABLE_COMMIT=${HTK_COMMIT:-"200b5e902b3a176fbfbe669b6a10a254c9b50f5d"} HTK_STABLE_COMMIT=${HTK_COMMIT}
BUILD_DIR=${BUILD_DIR:-$(mktemp -d)} BUILD_DIR=${BUILD_DIR:-$(mktemp -d)}
DEP_UP_LIST=${DEP_UP_LIST:-"divingbell"} DEP_UP_LIST=${DEP_UP_LIST:-"divingbell"}
@ -54,9 +54,11 @@ function helm_serve {
mkdir -p build mkdir -p build
pushd build pushd build
git clone --depth 1 $HTK_REPO || true git clone $HTK_REPO || true
pushd ${HTK_REPO##*/}/$HTK_PATH pushd ${HTK_REPO##*/}/$HTK_PATH
git reset --hard "${HTK_STABLE_COMMIT}" if [[ -n ${HTK_STABLE_COMMIT} ]]; then
git reset --hard "${HTK_STABLE_COMMIT}"
fi
helm_serve helm_serve
if [[ ${HELM} != "helm" ]] if [[ ${HELM} != "helm" ]]