-
Notifications
You must be signed in to change notification settings - Fork 361
Open
Labels
kind/featureCategory issues or PRs related to feature requestCategory issues or PRs related to feature request
Description
Issue Description
Type: feature request
We open this issue to track and summarize cases of E2E test. Suggestions and additions to this issue are welcomed!
Describe what feature you want
Our E2E test cases are currently very limited, we need add more cases.
Additional context
E2E test task list:
sealer image:
- build: build a Sealer Image from a Kubefile
- [P0]build with image type
- Support sealer build --type app-installer with app definition
- Support sealer build --type app-installer with kubernetes and app definition, and the image should not include the kubernetes-related resource
- Support sealer build --type kube-installer with kubernetes and app definition
- Support sealer build --type kube-installer with only kubernetes definition
- Support sealer build --type kube-installer with kubernetes and cmds definition
- If sealer build --type app-installer without app definition, return an error
- If the Kubefile contains both LAUNCH and CMDS, return an error
- [P1]build without cache
- build with args
- [P1]build multi-platform image
- [P0]instructions of Kubefile
- cluster image
- app image
- [P0]build with image type
- images: list all Sealer Images on the local node
- [P0]List Sealer images information
- inspect: print the image information or Clusterfile
- [P0]Support get image type and install cmd info from the result
- [P0]Sealer inspect by image name
- [P0]Sealer inspect by image ID
- load: load a Sealer Image from a tar file
- [P1]Load a Sealer Image from a tar file
- login: login image registry
- Login a remote registry
- [P2]Login a local registry
- logout: logout from image registry
- Logout a remote registry
- [P2]Logout a local registry
- pull: pull Sealer Image from a registry to local
- Pull Sealer Image from a registry to local
- push: push Sealer Image to remote registry
- Push Sealer Image to remote registry
- [P2]Push Sealer Image to local registry
- rmi: remove local images
- Remove local images
- [P2]prune dangling images
- save: save Sealer Image to a tar file
- [P2]Save Sealer Image to a tar file
- tag: create one or more tags for local Sealer Image
- Create one or more tags for local Sealer Image
sealer cluster:
- cert: Update Kubernetes API server's cert
- [P1]add DNS domain or IP in certs, if it is already in the cert subject alternative names list, nothing will be changed
- delete: delete an existing cluster
- Succeed in deleting the whole cluster (delete all)
- Succeed in deleting one node
- [P0]Succeed in deleting one master
- [P0]Succeed in deleting node IP list expressed in range form
- apply: apply a Kubernetes cluster via specified Clusterfile
- Succeed in applying a kube-installer type image by Clusterfile
- [P0]Succeed in applying a kube-installer type image by Clusterfile with Plugin
- Plugin type: shell plugin.
- [P0]Scope:
- on master0: pre-install, post-install, pre-uninstall, post-uninstall, pre-scaleup, post-scaleup
- on host: pre-init-host, post-init-host, pre-clean-host, post-clean-host
- Sealer executes machine is master0
- [P0]Sealer executes machine is not master0
- scale-up: scale-up new master or worker node to specified cluster
- [P0]Succeed in joining a node
- [P0]Succeed in joining a master
- [P0]Succeed in joining node IP list expressed in range form
- join: join new master or worker node to specified cluster
- Succeed in joining a node
- [P0]Succeed in joining a master
- [P0]Succeed in joining node IP list expressed in range form
- run: start to run a cluster from a Sealer Image
- Succeed in running a kube-installer type image and ensuring the kubernetes created and app launched/cmds executed successfully
- [P0]Succeed in running a kube-installer type image by Clusterfile
- [P0]Succeed in running an app-installer type image and ensuring the app launched successfully
- [P1]No vendor lock-in k8s: support run an app-installer type image on any kubernetes cluster even if they are not created by sealer
- [P0] Supports parallel deployment of apps
- [P1]LAUNCH one of app for app images
- [P1]Sealer run-app
- Only run app for KubeImage and check the status of kubenetes
- Run app image for AppImage
- [P0]Support single-node/3-node/3+N-node deployment mode
- [P1]Support AirGap environment deployment
- [P2]Support for multi kubernetes versions
- [P2]Support ipv6 single stack, ipv6 dual stack deployment
- [P1]Support ssh key deployment cluster
- [P0]Support node IP list expressed in range form
- [P1]If the node has a corresponding kubelet/docker, will refuse install
- [P2]Supports host aliases
- [P2]CIDR validity check
- [P1]Support configure LimitNOFILE for docker.service
- [P1]If the deployment fails at a certain step, the deployment can continue from the breakpoint again. This feature does not require that all breakpoints can be continued, but at least the following points are supported:
- The installation file has been distributed to each node, but K8sRuntime failed, you can continue from here without the need to distribute the file again
- [P2]Support for different container runtimes:
- docker (19.03)
- nvidia-docker when GPU detected
- containerd
- customize container runtime
- [P1]Operation capabilities:
- Support incremental configuration of CertSANs to existing clusters
- Master0 can be replaced
- Supports incremental deployment of AppImage, and can repeatedly deploy different versions of AppImage
sealer alpha:
- check: check the state of cluster
- [P1]Check the status of the cluster after it is created
- [P1]Check dependencies before cluster creation
- debug: Create debugging sessions for pods and nodes
- [P2]Clean the debug container or pod
- [P2]Debug node
- [P2]Debug pod or container
- [P2]List default images
- [P2]Check items, such as network, volume.
- [P2]Set environment variables in the container. (default [])
- [P2]Set container image to use for debug container
- [P2]Set container image pull policy, default policy is IfNotPresent
- [P2]Set container name to use for debug container
- [P2]Set namespace of Pod. (default "default")
- [P2]Keep stdin open on the container, even if nothing is attached.
- [P2]Allocate a TTY for the debugging container.
- exec: Exec a shell command or script on a specified node
- [P1]Exec the default cluster node
- [P1]specify the cluster name
- [P1]using role label to filter node and run exec cmd
- host-alias: set host-alias for hosts via specified Clusterfile
- [P1]host-alias hostnames
- [P1]host-alias ip
- manifest: manipulate manifest lists
- [P2]Add images to a manifest list
- [P2]Create manifest list
- [P2]Delete manifest list
- [P2]Display the contents of a manifest list
- [P2]Push a manifest list to a registry
- [P2]Remove an entry from a manifest list
- search: search Sealer Image in default registry
- [P2]search Sealer Image in default registry
config:
- [P1]If the configured path does not exist, write data directly to the file
- [P1]If the toSecret processor is configured, the data is converted into k8s secret
- [P1]If the Strategy field of the config configuration is Merge, the files specified by data and path are merged
registry:
- [P1]Configure registry cert
- [P1]Configure registry basic auth
- [P2]Configure container runtime registry address
Compatibility:
- [P2]Supported Architectures: amd64 and arm64
kakaZhou719, jsparter, Stevent-fei, starnop, YTGhost and 2 more
Metadata
Metadata
Assignees
Labels
kind/featureCategory issues or PRs related to feature requestCategory issues or PRs related to feature request