Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement Integration Tests for Enhanced Reliability #309

Open
maxlambrecht opened this issue Feb 14, 2024 · 5 comments
Open

Implement Integration Tests for Enhanced Reliability #309

maxlambrecht opened this issue Feb 14, 2024 · 5 comments

Comments

@maxlambrecht
Copy link
Member

To ensure the SPIRE Controller Manager operates reliably, this issue proposes the implementation of a suite of integration tests. Adapting the existing demo to run automatically serves as an excellent starting point. This approach will help systematically validate the system's functionality, laying the foundation for a robust testing framework.

@kfox1111
Copy link
Contributor

In a way, we're doing some of that already in the helm-chart-hardened repo as well. Would it make sense to team up between projects?

@maxlambrecht
Copy link
Member Author

I'm customizing the Dockerfile to incorporate specific internal images for our use case. To ensure these adjustments don't inadvertently cause regressions, having integration tests within the same repository would be extremely useful. This approach avoids the complexity of relying on another repo, streamlining the testing process.

@kfox1111
Copy link
Contributor

Fair. Depends on how far you want to take the tests i guess. Could introduce complexities of trying to integrate it with all the other bits by yourself. Like, does it work properly when configured to deploy a working mysql with k8s -> spire-controller-manager -> spire -> agent syncing the dnsname to allow authentication. We're already doing some of those type of tests, and being able to 'helm install spire --set spire-server.controllerManager.image=customimage may be relatively easy.

@maxlambrecht
Copy link
Member Author

Indeed, the tests you've described seem well-suited for the helm charts repository, focusing on end-to-end functionality including deployment and interaction with Kubernetes. For the spire-controller-manager, I'm advocating for integration tests that concentrate on the core functionality — particularly, the creation and verification of entries in the spire-server under diverse controller manager configurations.

@azdagron
Copy link
Member

This is very much desired and a prerequisite for the project seeking the "Production" badge from the SPIFFE organization.

While it would be nice to not have repeated effort, I feel like the integration tests for this repo should be independent of the helm chart and target specific features to the controller.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants