Skip to content

Conversation

@ritwik-g
Copy link
Contributor

Changes

This PR implements the Value class for managing configuration values in the Helm Values Manager. The implementation follows ADR-004 and provides robust support for both local and remote value storage.

Features

  • Value class with dual storage support (local/remote)
  • Complete serialization (to_dict/from_dict)
  • Robust validation for all fields
  • Comprehensive test coverage
  • Enhanced development documentation

Documentation Updates

  • Added code structure guide
  • Added testing guide
  • Updated contributing guidelines
  • Updated development tasks

Implementation Details

The Value class provides:

  • Path-based value management
  • Environment-aware configuration
  • Storage type flexibility (local/remote)
  • Backend abstraction for remote storage
  • Complete serialization support
  • Robust validation

Testing

  • Unit tests cover all core functionality
  • Test cases for both success and error paths
  • Validation of all required fields
  • Storage type handling tests
  • Serialization/deserialization tests

Documentation

  • Clear code organization principles
  • Testing standards and practices
  • Contribution guidelines
  • Development task tracking

Checklist

  • Implementation follows ADR-004
  • All tests pass
  • Documentation updated
  • Code follows project standards
  • Pre-commit hooks pass

- Add Value class with local and remote storage support
- Add comprehensive unit tests for Value class
- Update development documentation:
  - Add code structure guide
  - Add testing guide
  - Update contributing guidelines
  - Update development tasks

The Value class implementation follows ADR-004 and provides:
- Dual storage support (local/remote)
- Complete serialization
- Robust validation
- Comprehensive test coverage
- Remove storage_type from Value class
- Update ValueBackend interface to use path and environment
- Add SimpleValueBackend for non-sensitive values
- Update test cases and documentation
- Add ADR for unified backend approach
@sonarqubecloud
Copy link

@ritwik-g ritwik-g merged commit 7879f61 into main Feb 13, 2025
8 checks passed
@ritwik-g ritwik-g deleted the feature/value-class-implementation branch February 13, 2025 09:33
@ritwik-g ritwik-g linked an issue Feb 13, 2025 that may be closed by this pull request
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

Successfully merging this pull request may close these issues.

Add base classes to represent the yaml structure (without the secrets)

2 participants