elastic / elastic/cloudbeat

Implement integration tests for vanilla k8s.

Open
#2,003 0 comments 0 reactions 0 assignees View on GitHub
automation cloudbeat delegate-to-dev-team Team:Cloud Security
Dominant language
Go
Stars
58
Forks
55
Avg merge
9h 9m
Merged PRs (30d)
424

Description

**Motivation**
After migrating vanilla Kubernetes tests to a new format, it's apparent that there are still unimplemented test cases. This task involves developing and implementing the remaining test cases to achieve complete test coverage. Each test case should be created, integrated, and executed successfully within the new testing framework.

Here is the list of unimplemented test cases
- [ ] Rule 1.1.11 (Pass) Fix etcd configuration `_k8s-file-permission-job.yaml`
- [ ] Rule 1.1.12 (Pass) Fix etcd configuration `_k8s-file-permission-job.yaml`
- [ ] Rule 1.2.10 (Pass) Cannot set to pass through `kind-config`
- [ ] Rule 1.2.12 (Pass) `AlwaysPullImages` - requires pulling images from an external registry. `Cloudbeat` and `cloudbeat-tests` are loaded into the local registry and cannot be pulled from an external registry. Requires specific implementation to hold built images in an external artifactory.
- [ ] Rule 1.2.13 (Pass) - `SecurityContextDeny` - does not allow deployment of pods with security context `SecurityContext.as_user`. This case requires a special modification of the deployment `kind-test-proc-conf2.yml`.
- [ ] Rule 1.2.14 (Pass + Fail) - When configuring `disable-admission-plugins=ServiceAccount`, the kind cluster has many internal issues and requires additional special configuration.
- [ ] Rule 1.2.15 (Pass) - Requires investigation because when enable-admission-plugins: "NodeRestriction,NamespaceLifecycle" is set and disable-admission-plugins is not set, the rule evaluation fails.
- [ ] Rule 1.2.17 (Fail) - This test case is not implemented in the old test framework.
- [ ] Rule 1.2.19 (Pass) - This test case is not implemented in the old test framework.
- [ ] Rule 1.2.2 (Fail) - This test case is not implemented in the old test framework.
- [ ] Rule 1.2.25 (Fail) - This test case is not implemented in the old test framework.
- [ ] Rule 1.2.26 (Fail) - This test case is not implemented in the old test framework.
- [ ] Rule 1.2.27 (Fail) - This test case is not implemented in the old test framework.
- [ ] Rule 1.2.28 (Fail) - This test case is not implemented in the old test framework.
- [ ] Rule 1.2.29 (Fail) - This test case is not implemented in the old test framework.
- [ ] Rule 1.2.4 (Fail) - This test case is not implemented in the old test framework.
- [ ] Rule 1.2.5 (Fail) - This test case is not implemented in the old test framework.
- [ ] Rule 1.2.6 (Pass) - This test case is not implemented in the old test framework.
- [ ] Rule 1.2.7 (Fail) - Case `authorization-mode` is not configurable through `kind-config`
- [ ] Rule 1.2.8 (Fail) - Case `authorization-mode` is not configurable through `kind-config`
- [ ] Rule 1.2.9 (Fail) - Case `authorization-mode` is not configurable through `kind-config`
- [ ] Rule 1.3.3 (Fail) - Requires investigation.
- [ ] Rule 1.3.4 (Fail) - This test case is not implemented in the old test framework.
- [ ] Rule 1.3.5 (Fail) - Requires investigation.
- [ ] Rule 2.1 (Fail) - This test case is not implemented in the old test framework.
- [ ] Rule 2.4 (Fail) - This test case is not implemented in the old test framework.
- [ ] Rule 4.2.3 (Fail) - This test case is not implemented in the old test framework.
- [ ] Rule 4.2.4 (Pass) - Configuration issue.
- [ ] Rule 4.2.5 (Fail) - Requires investigation streamingConnectionIdleTimeout=0 should fail instead of pass.
- [ ] Rule 4.2.11 (Fail) - Configuration issue in `kind-test-proc-conf1.yml`. Although configured, on the node, this option is still true.
- [ ] Rule 4.2.12 (Fail) - Configuration issue in `kind-test-proc-conf1.yml`. Although configured, in the `kubelet` config file, this property does not appear.
- [ ] Rule 4.2.13 (Fail) - Requires investigation.
- [ ] Rule 5.2.9 (Pass + Fail) - These test cases were not implemented in the old test framework.

**Definition of done**
What needs to be completed at the end of this task
- [ ] Test case implementation.
- [ ] Successful test execution.
- [ ] Documentation Updates.

**Out of scope**
What should not be included in this task

**Related tasks/epics**
Reference related issues and epics

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.