redhat-best-practices-for-k8s / certsuite

https://redhat-best-practices-for-k8s.github.io/certsuite/
Apache License 2.0
15 stars 31 forks source link

DeploymentConfig must be considered in deployment-scaling and pod-owner-type tests. #672

Closed tginer closed 1 year ago

tginer commented 2 years ago

Using latest release v4.1.0, Replicas inside the DeploymentConfig resource are not being considered.

lifecycle-deployment-scaling was skipped with log: Test skipped because there are no []*provider.Deployment to test yet the application had multiple replicas defined.

lifecycle-pod-owner-type was failed with log: Tests that CNF Pod(s) are deployed as part of a ReplicaSet(s)/StatefulSet(s) and the application has ReplicaSets defined from DeploymentConfig resource

sebrandon1 commented 2 years ago

It seems like DeploymentConfig objects are OCP only. Right now we're only looking at the first-class native Deployment objects in Kubernetes.

In the OpenShift document about DeploymentConfig objects, it says:

Both Kubernetes Deployment objects and OpenShift Container Platform-provided DeploymentConfig objects are supported in OpenShift Container Platform; however, it is recommended to use Deployment objects unless you need a specific feature or behavior provided by DeploymentConfig objects.

Is there a certain feature/behavior the partner is using that they need to use the DeploymentConfig objects versus regular Deployment objects? We can look into adding support for DeploymentConfig.

sebrandon1 commented 2 years ago

After doing some more discussion and digging into DeploymentConfigs, it seems to be more of a "legacy" support feature rather than something that OCP users should actually be using.

It seems like the main feature is DeploymentConfig pushes is being able to do inplace updates but native Deployment objects already have the ability to do a rolling update, doc here.

Video with more context on DeploymentConfigs: https://www.youtube.com/watch?v=FFqy-H7slXE

sebrandon1 commented 2 years ago

Just for future reference, I started a branch here: https://github.com/sebrandon1/cnf-certification-test/commit/8dace9fd73a355e1dd8e1df3e56a192642818863 that started into adding DeploymentConfig support into our autodiscover process but I didn't get to the part where I added the objects into our tests.

tginer commented 2 years ago

Hi @sebrandon1 ,

Thank you very much for your inputs, in the mean time I was discussing with the partner the need of the DeploymentConfig in their specific CNF set up. Will reach out to them with this information you provided me of and decide together with your team the final decision.

sebrandon1 commented 1 year ago

Just as a note, #709 and #736 have added a warning about pods deployed via DeploymentConfig.