Implements the full founding-guild onboarding stack across four phases: Phase A — Keycloak OIDC auth pipeline (oidcc) + guild registration with ceremony-engine approval (SingleApproval, hub operator approves via gRPC). Phase B — Founding schematic templates (MSP/ISV/NSP TOML), gRPC clients for ceremony-service and ffc-schematic-server, schematic fork/bind/realize LiveView with DB audit trail in guild_schematics. Phase C — RealizationPoller GenServer polling realization status every 5s, PubSub broadcast, live realization dashboard showing 7 reconciler sections. Phase D — Self-service member onboarding (join request → guild master approval via ceremony), member management LiveView, auto-create guild master on guild approval via Ecto.Multi transaction. Includes K8s manifests for ceremony-service (port 50053) and ffc-schematic-server (port 9091) as ClusterIP services, plus updated guildhall deployment with OIDC and gRPC service URL env vars. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: Tyler J King <tking@guildhouse.dev>
57 lines
1.8 KiB
Elixir
57 lines
1.8 KiB
Elixir
import Config
|
|
|
|
# Ops DB development database
|
|
config :guildhall_ops_db, Guildhall.OpsDb.Repo,
|
|
username: "postgres",
|
|
password: "postgres",
|
|
hostname: "localhost",
|
|
database: "guildhall_dev",
|
|
stacktrace: true,
|
|
show_sensitive_data_on_connection_error: true,
|
|
pool_size: 10
|
|
|
|
# Phoenix endpoint — dev
|
|
config :guildhall_web, GuildhallWeb.Endpoint,
|
|
http: [ip: {127, 0, 0, 1}, port: 4000],
|
|
check_origin: false,
|
|
code_reloader: true,
|
|
debug_errors: true,
|
|
secret_key_base: "tdDDG32QQyJH7PescKIuKY/zdaykc4WASn04QH6JYH2Yo37ByUI6sq8zBNUQdd78",
|
|
watchers: [
|
|
esbuild: {Esbuild, :install_and_run, [:guildhall_web, ~w(--sourcemap=inline --watch)]},
|
|
tailwind: {Tailwind, :install_and_run, [:guildhall_web, ~w(--watch)]}
|
|
]
|
|
|
|
# Live reload patterns
|
|
config :guildhall_web, GuildhallWeb.Endpoint,
|
|
live_reload: [
|
|
web_console_logger: true,
|
|
patterns: [
|
|
~r"priv/static/(?!uploads/).*\.(js|css|png|jpeg|jpg|gif|svg)$",
|
|
~r"priv/gettext/.*\.po$",
|
|
~r"lib/guildhall_web_web/router\.ex$",
|
|
~r"lib/guildhall_web_web/(controllers|live|components)/.*\.(ex|heex)$"
|
|
]
|
|
]
|
|
|
|
config :guildhall_web, dev_routes: true
|
|
|
|
config :logger, :default_formatter, format: "[$level] $message\n"
|
|
config :phoenix, :stacktrace_depth, 20
|
|
config :phoenix, :plug_init_mode, :runtime
|
|
|
|
config :phoenix_live_view,
|
|
debug_heex_annotations: true,
|
|
debug_attributes: true,
|
|
enable_expensive_runtime_checks: true
|
|
|
|
config :guildhall_web, :oidc,
|
|
issuer: "https://auth.guildhouse.dev/realms/guildhouse",
|
|
client_id: "guildhall-web",
|
|
client_secret: System.get_env("OIDC_CLIENT_SECRET"),
|
|
redirect_uri: "http://localhost:4000/auth/callback"
|
|
|
|
config :guildhall_orchestrator,
|
|
ceremony_service_url: "localhost:50053",
|
|
schematic_service_url: "localhost:9091",
|
|
ffc_schematic_service_url: "localhost:9091"
|