Skip to content

Multi Tenancy E2E Tests Plan and Progress

chenqianfzh edited this page Aug 17, 2020 · 33 revisions

Goal as of 8/30/2020

Cover the multi-tenancy features checked in as of 7/30/2020 with e2e tests.

System Tenant basic functioning tests

  • kube-dns and virtlet are running

  • kubectl commands

    Done: create, get, describe, run, delete, cp, exec, apply, scale, patch, create job, label, autoscale, diff, cluster-info, expose

tenant initialization & deleter tests

  • system tenant is created automatically. System tenant cannot be deleted.
  • resources (namespaces, service accounts, clusterroles, clsuterrolebindings) created automatically at tenant initialization
  • multi-tenancy namespace deleter
  • tenant deleter

multi-tenancy Kubectl commands

All the tests should be done by

  • a regular tenant with the tenant admin context specified
  • by a system tenant user with "--tenant" option

Tests for for the following verbs are done: create, get, describe, run, delete, cp, exec, apply, scale, patch, create job, label, autoscale, diff, cluster-info, expose

controllers

  • deployment controller
  • replicaset controller
  • serviceaccount controller
  • token controller
  • endpoints controller
  • job controller
  • cronjob controller
  • daemonset controller
  • per-tenant resource quota controller
  • service controller
  • statefulset controller
  • persistentvolume controller
  • NodeLifeCycle controller

access control

  • regular tenants can not visit resources like nodes

CRD

  • per-tenant CRD
  • system forced CRD

Protection on fixed bugs