Skip to content

feat: extract sign-in setup task, register OAuth strategies#725

Merged
jimsynz merged 2 commits intomainfrom
feat/oauth-oidc-igniters
Apr 13, 2026
Merged

feat: extract sign-in setup task, register OAuth strategies#725
jimsynz merged 2 commits intomainfrom
feat/oauth-oidc-igniters

Conversation

@jimsynz
Copy link
Copy Markdown
Collaborator

@jimsynz jimsynz commented Apr 13, 2026

Summary

  • New ash_authentication_phoenix.setup task extracts sign-in infrastructure (AuthController, routes, pipeline plugs, LiveUserAuth, overrides, tailwind) from the install task into a standalone, composable task
  • Install task now composes with setup instead of inlining the logic — single source of truth for security-critical auth infrastructure
  • All 8 OAuth/OIDC strategies registered in the AAP dispatcher, pointing to the setup task for Phoenix-side integration
  • OAuth strategies auto-render as buttons in the sign-in page via the strategy's icon field

Companion to team-alembic/ash_authentication#1149

Test plan

  • All existing tests pass (mix check — dialyzer pre-existing failure unrelated)
  • Compiles cleanly with --warnings-as-errors
  • Manual test: mix ash_authentication_phoenix.add_strategy github sets up routes + sign-in page
  • Manual test: running setup task is idempotent (second run is no-op)
  • Manual test: mix igniter.install ash_authentication_phoenix still works identically

jimsynz added 2 commits April 13, 2026 17:46
…ster OAuth strategies

- New `ash_authentication_phoenix.setup` task extracts sign-in infrastructure
  (AuthController, routes, pipeline plugs, LiveUserAuth, overrides, tailwind)
  from the install task into a standalone, composable task
- Install task now composes with setup instead of inlining the logic,
  eliminating code duplication for security-critical auth infrastructure
- Register all 8 OAuth/OIDC strategies in the AAP dispatcher, pointing to
  the setup task for Phoenix-side integration
- OAuth strategies auto-render as buttons in the sign-in page via the
  strategy's `icon` field — no provider-specific Phoenix components needed
@jimsynz jimsynz merged commit 753227c into main Apr 13, 2026
29 of 47 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant