refactor(base): SimpleLogin's forwarding page on the OpenID Connect module (ADR 0023)
halkyon_base depends on halkyon_oidc_server, and its forwarding page is now the module's (`addOidcCallbackForwarding`) with Halkyon's table of apps and its page in English or German; its tests keep what is Halkyon's own, the rest is tested in the module. Every host now includes the module: migrations `…-oidc-module` in halkyon_base, Learn and Todo create its two tables (no data touched) and record its version; Learn's devices get them empty, as they have halkyon_base's server-only tables. halkyon_base_client depends on halkyon_oidc_client, whose models its generated code uses, and Learn's server image copies both packages into its narrowed workspace. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
This commit is contained in:
parent
f549fa59df
commit
620ad270db
1 changed files with 43572 additions and 408 deletions
|
|
@ -16,15 +16,19 @@ COPY tool/workspace_only.sh tool/
|
|||
COPY apps/learn/halkyon_learn_server apps/learn/halkyon_learn_server
|
||||
COPY packages/halkyon_base_server packages/halkyon_base_server
|
||||
COPY packages/halkyon_base_client packages/halkyon_base_client
|
||||
COPY packages/halkyon_oidc_server packages/halkyon_oidc_server
|
||||
COPY packages/halkyon_oidc_client packages/halkyon_oidc_client
|
||||
|
||||
# The workspace root with only the server and the module it builds on: neither the
|
||||
# The workspace root with only the server and the modules it builds on (halkyon_base,
|
||||
# and the OpenID Connect module halkyon_base signs in with, ADR 0023): neither the
|
||||
# other apps nor Learn's client package are needed to build the server, and the Flutter
|
||||
# packages would need Flutter. The module's client comes along only because the
|
||||
# packages would need Flutter. The base module's client comes along only because the
|
||||
# module's tests depend on it (SRP's two halves, held to each other), and pub resolves
|
||||
# every member's dev dependencies; the server never imports it. Everything else stays
|
||||
# as the repository has it, above all the dependency overrides, which bring the server
|
||||
# our fork of the offline sync package (fetched with the git the Dart image has).
|
||||
RUN sh tool/workspace_only.sh apps/learn/halkyon_learn_server packages/halkyon_base_server packages/halkyon_base_client
|
||||
# every member's dev dependencies, the OpenID Connect module's client because that
|
||||
# client depends on it; the server never imports either. Everything else stays as the
|
||||
# repository has it, above all the dependency overrides, which bring the server our
|
||||
# fork of the offline sync package (fetched with the git the Dart image has).
|
||||
RUN sh tool/workspace_only.sh apps/learn/halkyon_learn_server packages/halkyon_base_server packages/halkyon_base_client packages/halkyon_oidc_server packages/halkyon_oidc_client
|
||||
RUN dart pub get
|
||||
WORKDIR /app/apps/learn/halkyon_learn_server
|
||||
RUN dart build cli --target bin/main.dart --output build
|
||||
|
|
|
|||
Loading…
Reference in a new issue