https://github.com/cilium/cilium
Revision 9d4e99d500d0371bc5f42125d6c6772c387a7721 authored by Quentin Monnet on 23 June 2021, 14:25:47 UTC, committed by André Martins on 28 June 2021, 23:12:58 UTC
The AfterAll() and AfterEach() blocks in the test file for custom calls
run everytime, even if the Context block for the actual tests is
skipped. In that case, running the final blocks results in an attempt to
remove deployments that have never been set up in the first place. This
may lead to the blocks failing when the tests were in fact skipped, and
may produce test artifacts even though Jenkins does not considered the
test failed.

Let's reorganise those blocks, to make sure they are called only when
necessary. Note that we do need to keep both DeleteCilium() and
DeleteAll(), even if they are now in the same block, as calling only
DeleteAll() would not remove the Cilium ConfigMap.

Fixes: 37f6192c9e77 ("test: add CI test for tail calls hooks for custom programs")
Fixes: #13191
Fixes: #16633

Reported-by: Paul Chaignon <paul@cilium.io>
Signed-off-by: Quentin Monnet <quentin@isovalent.com>
1 parent d1a3b70
Raw File
Tip revision: 9d4e99d500d0371bc5f42125d6c6772c387a7721 authored by Quentin Monnet on 23 June 2021, 14:25:47 UTC
tests: rework custom calls's AfterEach/AfterAll blocks to skip if needed
Tip revision: 9d4e99d
CODEOWNERS
# Code owners groups and a brief description of their areas:
# @cilium/janitors           Catch-all for code not otherwise owned
# @cilium/agent              Cilium Agent
# @cilium/alibabacloud       Integration with AlibabaCloud
# @cilium/aws                Integration with AWS
# @cilium/azure              Integration with Azure
# @cilium/bpf                BPF Data Path
# @cilium/build              Building and packaging
# @cilium/ci-structure       Continuous integration, testing
# @cilium/cli                Commandline interfaces
# @cilium/contributing       Developer documentation & tools
# @cilium/docker             Docker plugin
# @cilium/docs-structure     Documentation, examples
# @cilium/endpoint           Endpoint package
# @cilium/github-sec         GitHub security (handling of secrets, consequences of pull_request_target, etc.)
# @cilium/health             Cilium cluster health tool
# @cilium/hubble             Hubble integration
# @cilium/ipam               IPAM
# @cilium/kubernetes         K8s integration, K8s CNI plugin
# @cilium/kvstore            Key/Value store: Consul, etcd
# @cilium/loadbalancer       Load balancer
# @cilium/loader             All related to LLVM, bpftool, Cilium loader, templating, etc.
# @cilium/operator           Cilium operator
# @cilium/policy             Policy behaviour
# @cilium/proxy              L7 proxy, Envoy
# @cilium/vendor             Vendoring, dependency management
# @cilium/wireguard          Wireguard integration

# The following filepaths should be sorted so that more specific paths occur
# after the less specific paths, otherwise the ownership for the specific paths
# is not properly picked up in Github.
* @cilium/janitors
/CODEOWNERS @cilium/contributing
/.github/ @cilium/contributing
/.github/workflows/ @cilium/github-sec @cilium/ci-structure
/.travis/ @cilium/ci-structure
/.travis.yml @cilium/ci-structure
/api/ @cilium/api
/api/v1/flow/ @cilium/api @cilium/hubble
/api/v1/health/ @cilium/api @cilium/health
/api/v1/observer/ @cilium/api @cilium/hubble
/api/v1/operator/ @cilium/api @cilium/operator
/api/v1/peer/ @cilium/api @cilium/hubble
/api/v1/recorder/ @cilium/api @cilium/hubble
/api/v1/relay/ @cilium/api @cilium/hubble
/bpf/ @cilium/bpf
Makefile* @cilium/build
/bpf/Makefile* @cilium/build @cilium/loader
/bpf/cilium-map-migrate.c @cilium/loader
/bpf/init.sh @cilium/loader
/bpf/custom/Makefile* @cilium/build @cilium/loader
/bpf/sockops/Makefile* @cilium/build @cilium/loader
/bugtool/cmd/ @cilium/cli
/cilium/ @cilium/cli
/cilium/cmd/preflight_k8s_valid_cnp.go @cilium/kubernetes
/cilium-health/ @cilium/health
/cilium-health/cmd/ @cilium/health @cilium/cli
/contrib/ @cilium/contributing
/contrib/packaging/ @cilium/build
/contrib/vagrant/ @cilium/contributing
/contrib/checkpatch/ @cilium/bpf
/contrib/coccinelle/ @cilium/bpf
/daemon/ @cilium/agent
/daemon/cmd/datapath.* @cilium/bpf
/daemon/cmd/endpoint.* @cilium/endpoint
/daemon/cmd/health.* @cilium/health
/daemon/cmd/hubble.go @cilium/hubble
/daemon/cmd/ipcache.* @cilium/ipcache
/daemon/cmd/kube_proxy.* @cilium/bpf
/daemon/cmd/loadbalancer.* @cilium/loadbalancer
/daemon/cmd/metrics.* @cilium/metrics
/daemon/cmd/policy.* @cilium/policy
/daemon/cmd/prefilter.go @cilium/bpf
/daemon/cmd/proxy.go @cilium/proxy
/daemon/cmd/state.go @cilium/endpoint
/daemon/cmd/sysctl_linux.go @cilium/bpf
/Documentation/ @cilium/docs-structure
/Documentation/_static/ @cilium/docs-structure
/Documentation/api.rst @cilium/agent @cilium/docs-structure
/Documentation/beta.rst @cilium/docs-structure
/Documentation/bpf.rst @cilium/bpf @cilium/docs-structure
/Documentation/check-build.sh @cilium/docs-structure
/Documentation/check-cmdref.sh @cilium/docs-structure
/Documentation/check-crd-compat-table.sh @cilium/docs-structure
/Documentation/check-examples.sh @cilium/docs-structure
/Documentation/cilium_operator.rst @cilium/operator
/Documentation/cmdref/ @cilium/nonexistantteam
/Documentation/commit-access.rst @cilium/contributing @cilium/docs-structure
/Documentation/community.rst @cilium/contributing
/Documentation/concepts/ebpf/ @cilium/bpf @cilium/docs-structure
/Documentation/concepts/index.rst @cilium/docs-structure
/Documentation/concepts/kubernetes/ @cilium/kubernetes @cilium/docs-structure
/Documentation/concepts/networking/ipam/ @cilium/ipam @cilium/docs-structure
/Documentation/concepts/networking/ipam/eni* @cilium/ipam @cilium/aws @cilium/docs-structure
/Documentation/concepts/networking/ipam/azure* @cilium/ipam @cilium/azure @cilium/docs-structure
/Documentation/concepts/observability/hubble-configuration.rst @cilium/hubble @cilium/docs-structure
/Documentation/concepts/overview.rst @cilium/docs-structure
/Documentation/concepts/security/proxy/ @cilium/proxy @cilium/docs-structure
/Documentation/conf.py @cilium/docs-structure
/Documentation/configuration/index.rst @cilium/docs-structure
/Documentation/contributing/ @cilium/contributing @cilium/docs-structure
/Documentation/Dockerfile @cilium/docs-structure
/Documentation/gettinghelp.rst @cilium/contributing @cilium/docs-structure
/Documentation/gettingstarted/alibabacloud* @cilium/alibabacloud @cilium/docs-structure
/Documentation/gettingstarted/aws* @cilium/aws @cilium/docs-structure
/Documentation/gettingstarted/bandwidth-manager.rst @cilium/bpf @cilium/docs-structure
/Documentation/gettingstarted/cni-chaining-aws-cni.rst @cilium/aws @cilium/docs-structure
/Documentation/gettingstarted/cni-chaining-azure-cni.rst @cilium/azure @cilium/docs-structure
/Documentation/gettingstarted/docker.rst @cilium/docker @cilium/docs-structure
/Documentation/gettingstarted/http.rst @cilium/policy @cilium/docs-structure
/Documentation/gettingstarted/hubble* @cilium/hubble @cilium/docs-structure
/Documentation/gettingstarted/index.rst @cilium/docs-structure
/Documentation/gettingstarted/ipam.rst @cilium/ipam @cilium/docs-structure
/Documentation/gettingstarted/kind-configure.rst @cilium/docs-structure
/Documentation/gettingstarted/kubeproxy-free.rst @cilium/loadbalancer @cilium/docs-structure
/Documentation/gettingstarted/policy-creation.rst @cilium/policy @cilium/docs-structure
/Documentation/glossary.rst @cilium/docs-structure
/Documentation/hubble.rst @cilium/hubble @cilium/docs-structure
/Documentation/images/re-request-review.png @cilium/contributing @cilium/docs-structure
/Documentation/index.rst @cilium/docs-structure
/Documentation/intro.rst @cilium/docs-structure
/Documentation/images/bpf* @cilium/bpf @cilium/docs-structure
/Documentation/images/hubble_getflows.png @cilium/hubble @cilium/docs-structure
/Documentation/Makefile @cilium/docs-structure
/Documentation/operations/performance/ @cilium/bpf @cilium/docs-structure
/Documentation/operations/system_requirements.rst @cilium/bpf @cilium/docs-structure
/Documentation/policy/ @cilium/policy @cilium/docs-structure
/Documentation/requirements.txt @cilium/docs-structure
/Documentation/spelling_wordlist.txt @cilium/docs-structure
/Documentation/tech-preview.rst @cilium/docs-structure
/Documentation/update-cmdref.sh @cilium/docs-structure
/Documentation/update-spelling_wordlist.sh @cilium/docs-structure
/Documentation/yaml.config @cilium/docs-structure
/envoy/ @cilium/proxy
/examples/ @cilium/docs-structure
/pkg/k8s/apis/cilium.io/v2/client/crds/ @cilium/kubernetes
/examples/kubernetes/ @cilium/kubernetes
/examples/minikube/ @cilium/kubernetes
*.Jenkinsfile @cilium/ci-structure
/hubble-relay/ @cilium/hubble
/images @cilium/build
/install/kubernetes/ @cilium/kubernetes @cilium/helm
/install/kubernetes/cilium/templates/hubble* @cilium/kubernetes @cilium/helm @cilium/hubble
jenkinsfiles @cilium/ci-structure
Jenkinsfile.nightly @cilium/ci-structure
/operator/ @cilium/operator
/pkg/annotation @cilium/kubernetes
/pkg/alibabacloud/ @cilium/alibabacloud
/pkg/api/ @cilium/api
/pkg/aws/ @cilium/aws
/pkg/azure/ @cilium/azure
/pkg/bandwidth/ @cilium/bpf
/pkg/bgp/ @cilium/kubernetes @cilium/loadbalancer
/pkg/bpf/ @cilium/bpf
/pkg/byteorder/ @cilium/bpf @cilium/api
/pkg/client @cilium/api
/pkg/completion/ @cilium/proxy
/pkg/components/ @cilium/agent
/pkg/controller @cilium/agent
/pkg/counter @cilium/bpf
/pkg/datapath/ @cilium/bpf
/pkg/datapath/linux/config/ @cilium/loader
/pkg/datapath/linux/probes/ @cilium/loader
/pkg/datapath/linux/requirements.go @cilium/loader
/pkg/datapath/loader.go @cilium/loader
/pkg/datapath/loader/ @cilium/loader
/pkg/datapath/ipcache/ @cilium/ipcache
/pkg/defaults @cilium/agent
/pkg/ebpf @cilium/bpf
/pkg/elf @cilium/bpf
/pkg/endpoint/ @cilium/endpoint
/pkg/endpointmanager/ @cilium/endpoint
/pkg/envoy/ @cilium/proxy
/pkg/fqdn/ @cilium/agent
/pkg/health/ @cilium/health
/pkg/hubble/ @cilium/hubble
/pkg/identity @cilium/policy
/pkg/ipam/ @cilium/ipam
/pkg/ipam/allocator/alibabacloud/ @cilium/ipam @cilium/alibabacloud
/pkg/ipam/allocator/aws/ @cilium/ipam @cilium/aws
/pkg/ipam/allocator/azure/ @cilium/ipam @cilium/azure
/pkg/ipam/allocator/clusterpool/ @cilium/ipam @cilium/operator
/pkg/ipcache/ @cilium/ipcache
/pkg/ipmasq @cilium/agent
/pkg/k8s/ @cilium/kubernetes
/pkg/k8s/apis/cilium.io/v2/ @cilium/api @cilium/kubernetes
/pkg/k8s/client/clientset/versioned/ @cilium/api
/pkg/k8s/client/informers/ @cilium/api
/pkg/kafka/ @cilium/proxy
/pkg/kvstore/ @cilium/kvstore
/pkg/labels @cilium/policy @cilium/api
/pkg/launcher @cilium/agent
/pkg/loadbalancer @cilium/loadbalancer
/pkg/lock @cilium/agent
/pkg/logging/ @cilium/cli
/pkg/mac @cilium/bpf
/pkg/maglev @cilium/loadbalancer
/pkg/maps/ @cilium/bpf
/pkg/mcastmanager @cilium/bpf
/pkg/metrics @cilium/metrics
/pkg/monitor @cilium/bpf
/pkg/monitor/api @cilium/api @cilium/bpf
/pkg/monitor/format @cilium/cli @cilium/bpf
/pkg/monitor/payload @cilium/api @cilium/bpf
/pkg/mountinfo @cilium/bpf
/pkg/mtu @cilium/bpf
/pkg/multicast @cilium/bpf
/pkg/node @cilium/agent
/pkg/option @cilium/agent @cilium/cli
/pkg/pidfile @cilium/agent
/pkg/policy @cilium/policy
/pkg/policy/api/ @cilium/api
/pkg/policy/groups/aws/ @cilium/policy @cilium/aws
/pkg/proxy/ @cilium/proxy
/pkg/proxy/accesslog @cilium/api
/pkg/redirectpolicy @cilium/loadbalancer
/pkg/serializer @cilium/agent
/pkg/service @cilium/loadbalancer
/pkg/sysctl @cilium/bpf
/pkg/testutils/ @cilium/ci-structure
/pkg/tuple @cilium/bpf
/pkg/wireguard @cilium/wireguard
/plugins/cilium-cni/ @cilium/kubernetes
/plugins/cilium-docker/ @cilium/docker
/proxylib/ @cilium/proxy
/README.rst @cilium/docs-structure
/test/ @cilium/ci-structure
/test/Makefile* @cilium/ci-structure @cilium/build
# Service handling tests
/test/k8sT/external_ips.go @cilium/loadbalancer @cilium/ci-structure
/test/k8sT/manifests/externalIPs/ @cilium/loadbalancer @cilium/ci-structure
/test/k8sT/Services.go @cilium/loadbalancer @cilium/ci-structure
/test/runtime/lb.go @cilium/loadbalancer @cilium/ci-structure
# Datapath tests
/test/bpf/ @cilium/bpf
/test/bpf/check-complexity.sh @cilium/loader
/test/bpf/verifier-test.sh @cilium/loader
/test/k8sT/Bandwidth.go @cilium/bpf @cilium/ci-structure
/test/k8sT/Chaos.go @cilium/bpf @cilium/ci-structure
/test/k8sT/DatapathConfiguration.go @cilium/bpf @cilium/ci-structure
/test/k8sT/Verifier.go @cilium/loader @cilium/ci-structure
/test/runtime/benchmark.go @cilium/bpf @cilium/ci-structure
/test/runtime/connectivity.go @cilium/bpf @cilium/ci-structure
# Policy tests
/test/k8sT/PoliciesNightly.go @cilium/policy @cilium/ci-structure
/test/k8sT/Policies.go @cilium/policy @cilium/ci-structure
/test/k8sT/StressPolicy.go @cilium/policy @cilium/ci-structure
/test/runtime/Policies.go @cilium/policy @cilium/ci-structure
# Hubble/monitoring tests
/test/k8sT/hubble.go @cilium/hubble @cilium/ci-structure
/test/runtime/monitor.go @cilium/hubble @cilium/ci-structure
# L7 proxy tests
/test/k8sT/fqdn.go @cilium/proxy @cilium/ci-structure
/test/k8sT/KafkaPolicies.go @cilium/proxy @cilium/ci-structure
/test/k8sT/l7_demos.go @cilium/proxy @cilium/ci-structure
/test/runtime/cassandra.go @cilium/proxy @cilium/ci-structure
/test/runtime/fqdn.go @cilium/proxy @cilium/ci-structure
/test/runtime/kafka.go @cilium/proxy @cilium/ci-structure
/test/runtime/memcache.go @cilium/proxy @cilium/ci-structure
# Standalone L4LB tests
/test/l4lb @cilium/loadbalancer @cilium/ci-structure
# Misc. tests
/test/k8sT/cli.go @cilium/cli @cilium/ci-structure
/test/k8sT/Health.go @cilium/health @cilium/ci-structure
/test/k8sT/Identity.go @cilium/agent @cilium/ci-structure
/test/k8sT/Updates.go @cilium/agent @cilium/ci-structure
/test/runtime/kvstore.go @cilium/kvstore @cilium/ci-structure
/test/runtime/chaos_agent.go @cilium/agent @cilium/ci-structure
/test/runtime/chaos_endpoint.go @cilium/endpoint @cilium/ci-structure
/tests/ @cilium/ci-structure
/tools/ @cilium/contributing
Vagrantfile @cilium/ci-structure
/Vagrantfile @cilium/contributing
/go.sum @cilium/vendor
/go.mod @cilium/vendor
/vagrant_box_defaults.rb @cilium/ci-structure
/vendor/ @cilium/vendor
back to top