Props to Chilts, Danny and Ryan!

I can vouch that navigating the repos and the code is now far simpler.
Adding the new features is actually pretty straight forward, the most
painful part is updating tests in the fxa-auth-db-server and then `npm
install`ing that into the backends being updated.

For other devs digging in, replacing `node_dependencies/fxa-auth-db-server`
in the individual backends with a symlink to your local fxa-auth-db-server
repo that contains the updated tests simplifies things.

Shane

On Wed, Feb 4, 2015 at 5:14 AM, Ryan Kelly <[email protected]> wrote:

>
> Hi All,
>
>
> We've just landed a pretty major refactoring of the way database backends
> work in fxa-auth-server.  Big :thumbsup: to Chilts and Danny for seeing
> this work through to completion!
>
> I'm sending this email mainly as a heads-up - ideally you will not notice
> anything different unless you're working with (or deploying!) FxA core auth
> backend code.
>
> But if things on the dev environment seem a little unstable over the next
> few days, some unexpected side-effect of this change is a pretty likely
> suspect...
>
> If you're interested, see below for a summary of the new code layout.
>
>
>   Cheers,
>
>     Ryan
>
>
> =========
>
> As of this merge we have the following repos involved in storing account
> data:
>
>
>   fxa-auth-server:  The core web app for the FxA auth api, this handles
>                     all client interaction logic and talks to a generic
>                     internal HTTP service for data storage.
>
>   fxa-auth-db-server:  This speaks the HTTP API for data storage, and
>                        translates requests into calls to a generic
>                        object API.  Think of it as a "base class" for
>                        auth-db implementations.
>
>   fxa-auth-db-mem:  This imports fxa-auth-db-server and provides a
>                     simple in-memory data store, for testing purposes.
>
>   fxa-auth-db-mysql:  This is our production backend.  It imports
>                       fxa-auth-db-server and provides a MySQL-backed
>                       data storage layer.
>
> This factoring will help us to avoid deploying test-related code to
> production.  It may also be useful for self-hosters who want to work atop a
> different backend, as there's no need for them to deploy the mysql-specific
> stuff we use internally.
>
> On the downside, if you're adding a new feature to the storage layer (e.g.
> the "account lockout" feature that Shane is working on) you now have to
> co-ordinate across three different repos.  This as been quite manageable in
> practice so far.
> _______________________________________________
> Dev-fxacct mailing list
> [email protected]
> https://mail.mozilla.org/listinfo/dev-fxacct
>
_______________________________________________
Dev-fxacct mailing list
[email protected]
https://mail.mozilla.org/listinfo/dev-fxacct

Reply via email to