Merge commit 'c4453dd2de33b44b160163c3aec3efa922c4a5d0'

This commit is contained in:
andyzhangx 2023-02-19 14:14:17 +00:00
commit 55059e3c82
4 changed files with 18 additions and 8 deletions

View File

@ -22,17 +22,19 @@ aliases:
- ggriffiths - ggriffiths
- gnufied - gnufied
- humblec - humblec
- mauriciopoppe
- j-griffith - j-griffith
- Jiawei0227
- jingxu97 - jingxu97
- jsafrane - jsafrane
- pohly - pohly
- RaunakShah - RaunakShah
- sunnylovestiramisu
- xing-yang - xing-yang
# This documents who previously contributed to Kubernetes-CSI # This documents who previously contributed to Kubernetes-CSI
# as approver. # as approver.
emeritus_approvers: emeritus_approvers:
- Jiawei0227
- lpabon - lpabon
- sbezverk - sbezverk
- vladimirvivien - vladimirvivien

View File

@ -92,6 +92,8 @@ naming convention `<hostpath-deployment-version>-on-<kubernetes-version>`.
1. Check that all [canary CI 1. Check that all [canary CI
jobs](https://k8s-testgrid.appspot.com/sig-storage-csi-ci) are passing, jobs](https://k8s-testgrid.appspot.com/sig-storage-csi-ci) are passing,
and that test coverage is adequate for the changes that are going into the release. and that test coverage is adequate for the changes that are going into the release.
1. Check that the post-\<sidecar\>-push-images builds are succeeding.
[Example](https://k8s-testgrid.appspot.com/sig-storage-image-build#post-external-snapshotter-push-images)
1. Make sure that no new PRs have merged in the meantime, and no PRs are in 1. Make sure that no new PRs have merged in the meantime, and no PRs are in
flight and soon to be merged. flight and soon to be merged.
1. Create a new release following a previous release as a template. Be sure to select the correct 1. Create a new release following a previous release as a template. Be sure to select the correct

View File

@ -56,6 +56,7 @@ type TestCase struct {
Name string `xml:"name,attr"` Name string `xml:"name,attr"`
Time string `xml:"time,attr"` Time string `xml:"time,attr"`
SystemOut string `xml:"system-out,omitempty"` SystemOut string `xml:"system-out,omitempty"`
SystemErr string `xml:"system-err,omitempty"`
Failure string `xml:"failure,omitempty"` Failure string `xml:"failure,omitempty"`
Skipped SkipReason `xml:"skipped,omitempty"` Skipped SkipReason `xml:"skipped,omitempty"`
} }
@ -109,7 +110,7 @@ func main() {
if err := xml.Unmarshal(data, &junitv2); err != nil { if err := xml.Unmarshal(data, &junitv2); err != nil {
panic(err) panic(err)
} }
junit = junitv2.TestSuite junit.TestCases = append(junit.TestCases, junitv2.TestSuite.TestCases...)
} }
} }

View File

@ -196,7 +196,7 @@ kindest/node:v1.18.20@sha256:738cdc23ed4be6cc0b7ea277a2ebcc454c8373d7d8fb991a7fc
# If the deployment script is called with CSI_PROW_TEST_DRIVER=<file name> as # If the deployment script is called with CSI_PROW_TEST_DRIVER=<file name> as
# environment variable, then it must write a suitable test driver configuration # environment variable, then it must write a suitable test driver configuration
# into that file in addition to installing the driver. # into that file in addition to installing the driver.
configvar CSI_PROW_DRIVER_VERSION "v1.8.0" "CSI driver version" configvar CSI_PROW_DRIVER_VERSION "v1.11.0" "CSI driver version"
configvar CSI_PROW_DRIVER_REPO https://github.com/kubernetes-csi/csi-driver-host-path "CSI driver repo" configvar CSI_PROW_DRIVER_REPO https://github.com/kubernetes-csi/csi-driver-host-path "CSI driver repo"
configvar CSI_PROW_DEPLOYMENT "" "deployment" configvar CSI_PROW_DEPLOYMENT "" "deployment"
configvar CSI_PROW_DEPLOYMENT_SUFFIX "" "additional suffix in kubernetes-x.yy[suffix].yaml files" configvar CSI_PROW_DEPLOYMENT_SUFFIX "" "additional suffix in kubernetes-x.yy[suffix].yaml files"
@ -1008,7 +1008,10 @@ run_e2e () (
# the full Kubernetes E2E testsuite while only running a few tests. # the full Kubernetes E2E testsuite while only running a few tests.
move_junit () { move_junit () {
if ls "${ARTIFACTS}"/junit_[0-9]*.xml 2>/dev/null >/dev/null; then if ls "${ARTIFACTS}"/junit_[0-9]*.xml 2>/dev/null >/dev/null; then
run_filter_junit -t="External.Storage|CSI.mock.volume" -o "${ARTIFACTS}/junit_${name}.xml" "${ARTIFACTS}"/junit_[0-9]*.xml && rm -f "${ARTIFACTS}"/junit_[0-9]*.xml mkdir -p "${ARTIFACTS}/junit/${name}" &&
mkdir -p "${ARTIFACTS}/junit/steps" &&
run_filter_junit -t="External.Storage|CSI.mock.volume" -o "${ARTIFACTS}/junit/steps/junit_${name}.xml" "${ARTIFACTS}"/junit_[0-9]*.xml &&
mv "${ARTIFACTS}"/junit_[0-9]*.xml "${ARTIFACTS}/junit/${name}/"
fi fi
} }
trap move_junit EXIT trap move_junit EXIT
@ -1085,13 +1088,14 @@ kubectl exec "$pod" -c "${CSI_PROW_SANITY_CONTAINER}" -- /bin/sh -c "\${CHECK_PA
EOF EOF
chmod u+x "${CSI_PROW_WORK}"/*dir_in_pod.sh chmod u+x "${CSI_PROW_WORK}"/*dir_in_pod.sh
mkdir -p "${ARTIFACTS}/junit/steps"
# This cannot run in parallel, because -csi.junitfile output # This cannot run in parallel, because -csi.junitfile output
# from different Ginkgo nodes would go to the same file. Also the # from different Ginkgo nodes would go to the same file. Also the
# staging and target directories are the same. # staging and target directories are the same.
run_with_loggers "${CSI_PROW_WORK}/csi-sanity" \ run_with_loggers "${CSI_PROW_WORK}/csi-sanity" \
-ginkgo.v \ -ginkgo.v \
-csi.junitfile "${ARTIFACTS}/junit_sanity.xml" \ -csi.junitfile "${ARTIFACTS}/junit/steps/junit_sanity.xml" \
-csi.endpoint "dns:///$(docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' csi-prow-control-plane):$(kubectl get "services/${CSI_PROW_SANITY_SERVICE}" -o "jsonpath={..nodePort}")" \ -csi.endpoint "dns:///$(docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' csi-prow-control-plane):$(kubectl get "services/${CSI_PROW_SANITY_SERVICE}" -o "jsonpath={..nodePort}")" \
-csi.stagingdir "/tmp/staging" \ -csi.stagingdir "/tmp/staging" \
-csi.mountdir "/tmp/mount" \ -csi.mountdir "/tmp/mount" \
@ -1121,7 +1125,8 @@ make_test_to_junit () {
# Plain make-test.xml was not delivered as text/xml by the web # Plain make-test.xml was not delivered as text/xml by the web
# server and ignored by spyglass. It seems that the name has to # server and ignored by spyglass. It seems that the name has to
# match junit*.xml. # match junit*.xml.
out="${ARTIFACTS}/junit_make_test.xml" out="${ARTIFACTS}/junit/steps/junit_make_test.xml"
mkdir -p "$(dirname "$out")"
testname= testname=
echo "<testsuite>" >>"$out" echo "<testsuite>" >>"$out"
@ -1385,8 +1390,8 @@ main () {
fi fi
# Merge all junit files into one. This gets rid of duplicated "skipped" tests. # Merge all junit files into one. This gets rid of duplicated "skipped" tests.
if ls "${ARTIFACTS}"/junit_*.xml 2>/dev/null >&2; then if ls "${ARTIFACTS}"/junit/steps/junit_*.xml 2>/dev/null >&2; then
run_filter_junit -o "${CSI_PROW_WORK}/junit_final.xml" "${ARTIFACTS}"/junit_*.xml && rm "${ARTIFACTS}"/junit_*.xml && mv "${CSI_PROW_WORK}/junit_final.xml" "${ARTIFACTS}" run_filter_junit -o "${ARTIFACTS}/junit_final.xml" "${ARTIFACTS}"/junit/steps/junit_*.xml
fi fi
return "$ret" return "$ret"