Remove unnecessary MIT license header from K3sContainer
Background
During a license audit, we found that K3sContainer.java contains an MIT license header referencing the Testcontainers K3s module. The header was added out of caution when this implementation was created, stating the file was "loosely inspired by" the Testcontainers version.
Analysis
After comparing the two implementations, there are no substantial similarities beyond standard K3s configuration requirements:
Common elements (standard K3s requirements, not copyrightable):
- Privileged mode (required by K3s)
- tmpfs for
/runand/var/run(required by K3s) - CgroupnsMode = "host" (required by K3s)
- Disabling traefik by default (common practice)
Significant differences:
-
Class hierarchy:
KubernetesWithKubeletContainervsGenericContainer - Kubeconfig handling: Custom utilities vs Jackson YAML parsing
- Dependencies: No Jackson/Lombok
- Feature set: Version management, node port ranges, command line modifiers
- Implementation: Completely different code structure
The original Testcontainers K3s module is 70 lines with Jackson-based kubeconfig parsing. This implementation is 124 lines with a completely different architecture and feature set.
Request for Feedback
Before merging, we'd like to confirm with the Testcontainers maintainers that:
- They agree this is not a derivative work requiring MIT license attribution
- The removal of the header is appropriate
Summoning @kiview @rnorth - would appreciate your perspective on this. If you believe the MIT header should remain for any reason, we're happy to keep it.
Changes
- Removed MIT license header
- Replaced with simple comment noting K3s standard requirements
- No code changes, only license header
🤖 Generated with Claude Code