The (aspirational) foundation of CS at WCU!

Database, Good auth, LTI, oh my! #67

Closed bwc9876.dev
targeting main from ben/auto-plworvoqomnp
Closed opened by and assigned to bwc9876.dev
targeting main from ben/auto-plworvoqomnp
  • Start our database out with hopefully our only migration ever needed
  • Create an extractor for LTI messages
  • Redo auth a little bit and make a LoggedIn extractor to require the user to be logged in
  • Init a CLI that uses runner code
Commits 31

treewide: rename all rs-* pkgs/libs to bedrock-*
rs-top: include static_file macro
treewide: switch to anyhow for log-facing errors
rs-lti: put /register-link behind auth
rs-auth: add LoggedIn extractor
rs-auth: just store state, add ?next
rs-lti: generate and serve JWKs
rs-openidconnect: rename to openidconnect-lti to remove from workspace
rs-lti: add LtiMessage axum extractor
rs-lti: write registration to database
rs-lti: use new pattern for global state
rs-auth: use session store, write to db on user login
devshell: switch to mkShell, add sqlite3
rs-auth: add session store
rs-database: init
rs-cli: add earned/max scores for JSON output
rs-cli: fix 'unnecessary qualifier' linter complaint
rs-cli: simple color support check
rs-runner: wrong position for bwrap double-dash
rs-cli: grade subcommand with rough output
rs-runner: support building nix env
rs-cli: init
rs-runner-service: init, take web-specific behavior from rs-runner
rs-api: init, move types out of rs-runner
splashpage: init
fmt: djlint for jinja templates
rs-common: init
todo: init
nix: init crane
nix/npins: update; rust: remove redundant lint
justfile: misc changes, see desc