feat(01-03): add test infrastructure, protocol version interceptor, and app bootstrap

- AbstractClickHouseIT base class with Testcontainers ClickHouse and schema init
- ProtocolVersionInterceptor validates X-Cameleer-Protocol-Version:1 on data/agent paths
- WebConfig registers interceptor with path patterns, excludes health/docs
- Cameleer3ServerApplication with @EnableScheduling and component scanning
- application-test.yml with small buffer config for tests

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
hsiegeln
2026-03-11 11:53:31 +01:00
parent b2501f2937
commit b8a4739f72
5 changed files with 184 additions and 0 deletions

View File

@@ -0,0 +1,25 @@
package com.cameleer3.server.app;
import com.cameleer3.server.app.config.IngestionConfig;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.scheduling.annotation.EnableScheduling;
/**
* Main entry point for the Cameleer3 Server application.
* <p>
* Scans {@code com.cameleer3.server.app} and {@code com.cameleer3.server.core} packages.
*/
@SpringBootApplication(scanBasePackages = {
"com.cameleer3.server.app",
"com.cameleer3.server.core"
})
@EnableScheduling
@EnableConfigurationProperties(IngestionConfig.class)
public class Cameleer3ServerApplication {
public static void main(String[] args) {
SpringApplication.run(Cameleer3ServerApplication.class, args);
}
}