This module is a fork of Recurly Aegir, whose goal is to make it more generic so that is supports multiple subscription providers.
Plan:
Start a new project called Aegir Subscriptions (aegir_subscriptions).Copy Recurly Aegir into it.Move all of the Recurly-specific code into a submodule called Aegir Site Subscriptions: Recurly (aegir_site_subscriptions_recurly).Deprecate Recurly Aegir.Update and merge branch plugin-manager-scaffolding.No longer necessary as rewritten.- In other issues, add new submodules (e.g. Stripe, Commerce, etc.) to the new module as desired.
Original issue from Recurly Aegir
As per the discussion at #1880614: Aegir Commerce Integration Status, I'd like to make this module more generic. Ideally, it would support any subscription service; it shouldn't be tied to Recurly only. It should also support services like Stripe Subscriptions and Commerce (perhaps via Commerce License Hosting).
So this module would be the Aegir equivalent of Licensing.
I'm proposing the following plan:
- Start a new project called Aegir Subscriptions (aegir_subscriptions).
- Copy this module into it.
- Move all of the Recurly-specific code into a submodule called Aegir Subscriptions: Recurly (aegir_subscriptions_recurly).
- Deprecate this module, Recurly Aegir.
- Add new submodules (e.g. Stripe, Commerce, etc.) to the new module as desired.
I won't be working on this myself in the near future unless someone provides me with funding, but I do think it's where we should go.
Thoughts?
Comments
Comment #2
tommycox CreditAttribution: tommycox as a volunteer commentedI've broken ground on this here: Aegir Subscriptions
It's currently just the minimal scaffolding for the Subscription plugin type and Provider plugin discovery. The actual functionality still needs to be implemented, then the recurly_aegir module will need to be integrated and refactored.
Comment #3
tommycox CreditAttribution: tommycox as a volunteer commented@colan I've added you as a maintainer on the project as well so recurly_aegir work can continue in aegir_subscriptions_reculry once it gets integrated, and also so you can assist with the integration if need be or if the free time arises.
Comment #4
colanFantastic! Thanks for starting this. I was hoping someone other than me with a non-Recurly-specific perspective would get it going. It should keep the design more generic.
Comment #5
colanComment #6
colanMoving queues. I'll move your few commits to another branch, move the recurly_aegir in, and then look at merging your work with the scaffolding back in.
Comment #7
colanRecurly Aegir has now been merged.
Comment #8
colanComment #9
colanAs the name of the module and other things have changed, I'm regenerating the plugin manager, but still giving credit to @tommycox. Thanks for doing this the first time!
drupal generate:plugin:type:annotation --module="aegir_site_subscriptions" --class="SubscriptionProvider" --machine-name="aegir_site_subscription_provider" --label="Aegir site subscription provider"
Comment #11
colanThere's still some Recurly-specific stuff in src/Wrappers. It needs to be made more generic with the Recurly stuff moved to its plugin.
Comment #13
colanRefactoring is mostly done. What's left:
Comment #14
colanComment #15
colanWill handle the deprecated code in other issues.
Comment #17
colanComment #18
colan