feat: BuildKit client + integration test suite (651 tests)

BuildKitClient CLI wrapper for buildctl.
Docker compose stack (9 services) for integration testing.
Comprehensive test suite: wiremock tests for Matrix/La Suite/S3/client,
integration tests for Kratos/Hydra/Gitea/OpenSearch/Prometheus/Loki/
Grafana/LiveKit.

Bump: sunbeam-sdk v0.12.0
This commit is contained in:
2026-03-21 20:35:59 +00:00
parent b60e22edee
commit f06a167496
20 changed files with 8795 additions and 2 deletions

View File

@@ -0,0 +1,27 @@
{
"$id": "https://schemas.sunbeam.pt/default.schema.json",
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "Default identity",
"type": "object",
"properties": {
"traits": {
"type": "object",
"properties": {
"email": {
"type": "string",
"format": "email",
"title": "Email",
"ory.sh/kratos": {
"credentials": {
"password": { "identifier": true }
},
"recovery": { "via": "email" },
"verification": { "via": "email" }
}
}
},
"required": ["email"],
"additionalProperties": true
}
}
}

View File

@@ -0,0 +1,26 @@
dsn: memory
serve:
admin:
port: 4434
host: 0.0.0.0
public:
port: 4433
host: 0.0.0.0
base_url: http://localhost:4433/
identity:
default_schema_id: default
schemas:
- id: default
url: file:///etc/config/kratos/identity.schema.json
selfservice:
default_browser_return_url: http://localhost:4455/
flows:
registration:
enabled: true
courier:
smtp:
connection_uri: smtp://localhost:1025/?disable_starttls=true

View File

@@ -0,0 +1,7 @@
port: 7880
bind_addresses:
- 0.0.0.0
keys:
devkey: devsecret
logging:
level: info

View File

@@ -0,0 +1,34 @@
auth_enabled: false
server:
http_listen_port: 3100
common:
ring:
kvstore:
store: inmemory
replication_factor: 1
instance_addr: 127.0.0.1
path_prefix: /tmp/loki
ingester:
lifecycler:
ring:
kvstore:
store: inmemory
replication_factor: 1
min_ready_duration: 0s
schema_config:
configs:
- from: "2020-01-01"
store: tsdb
object_store: filesystem
schema: v13
index:
prefix: index_
period: 24h
storage_config:
filesystem:
directory: /tmp/loki/chunks

View File

@@ -0,0 +1,8 @@
global:
scrape_interval: 5s
evaluation_interval: 5s
scrape_configs:
- job_name: prometheus
static_configs:
- targets: ['localhost:9090']