Closed michaeldmitry closed 3 months ago
This pull request sets up GitHub code scanning for this repository. Once the scans have completed and the checks have passed, the analysis results for this pull request branch will appear on this overview. Once you merge this pull request, the 'Security' tab will show more code scanning analysis results (for example, for the default branch). Depending on your configuration and choice of analysis tool, future pull requests will be annotated with code scanning analysis results. For more information about GitHub code scanning, check out the documentation.
Issue
tempo configurations are in the form of raw dicts.
Solution
Translate all currently used tempo config to pydantic models.
Testing instructions
For coordinator to work and push tempo configuration to workers, it needs an s3 integration. To workaround the issue and not need an actual s3 instance, we can use Facade charm for mocking s3 interface.
Deploy tempo k8s operator (used for validation)
Deploy tempo coordinator
cwd to
tempo-coordinator-k8s-operator
Deploy Facade
cwd to
tempo-coordinator-k8s-operator
Deploy tempo worker
cwd to
tempo-worker-k8s-operator
Integrate cluster
Validation
1- coordinator and worker should both be in active/idle 2- kubectl exec -it tempo-worker-0 -n -c tempo -- cat /etc/tempo/tempo.yaml
3- kubectl exec -it tempo-0 -n -c tempo -- cat /etc/tempo/tempo.yaml
4- Both config files should match apart from storage options, as s3 would be used in coordinator instead of local storage
TLS Validation
Repeat above steps after
juju integrate ssc tempo-coordinator-k8s