Files
my-rook-config/pkg/operator/k8sutil/test/deployment.go
T
Sébastien Han f44583b2b9 ceph: remove dead code
As part of the transition to support Ceph release **as of** Nautilus, we
left over that portion of code.
We don't need it anymore.

Signed-off-by: Sébastien Han <seb@redhat.com>
2020-03-16 14:01:24 +01:00

41 lines
1.9 KiB
Go

package test
import (
"github.com/rook/rook/pkg/clusterd"
apps "k8s.io/api/apps/v1"
)
// UpdateDeploymentAndWaitStub returns a stub replacement for the UpdateDeploymentAndWait function
// for unit tests which always returns success (nil). The generated simple clientset doesn't seem to
// handle the Deployment.Update method as expected. The deployment is instead zero-ed out when the
// deployment is updated with an unchanged version, which breaks unit tests.
// In order to still test the UpdateDeploymentAndWait function, the stub function returned will
// append a copy of the deployment used as input to the list of deployments updated. The function
// returns a pointer to this slice which the calling func may use to verify the expected contents of
// deploymentsUpdated based on expected behavior.
func UpdateDeploymentAndWaitStub() (
stubFunc func(context *clusterd.Context, deployment *apps.Deployment, namespace, daemonType, daemonName string, skipUpgradeChecks, continueUpgradeAfterChecksEvenIfNotHealthy bool) error,
deploymentsUpdated *[]*apps.Deployment,
) {
deploymentsUpdated = &[]*apps.Deployment{}
stubFunc = func(context *clusterd.Context, deployment *apps.Deployment, namespace, daemonType, daemonName string, skipUpgradeChecks, continueUpgradeAfterChecksEvenIfNotHealthy bool) error {
*deploymentsUpdated = append(*deploymentsUpdated, deployment)
return nil
}
return stubFunc, deploymentsUpdated
}
// DeploymentNamesUpdated converts a deploymentsUpdated slice into a string slice of deployment names
func DeploymentNamesUpdated(deploymentsUpdated *[]*apps.Deployment) []string {
ns := []string{}
for _, d := range *deploymentsUpdated {
ns = append(ns, d.GetName())
}
return ns
}
// ClearDeploymentsUpdated clears the deploymentsUpdated list
func ClearDeploymentsUpdated(deploymentsUpdated *[]*apps.Deployment) {
*deploymentsUpdated = []*apps.Deployment{}
}