Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create a Backdrop Update Server #22

Closed
jenlampton opened this issue Aug 14, 2014 · 8 comments
Closed

Create a Backdrop Update Server #22

jenlampton opened this issue Aug 14, 2014 · 8 comments

Comments

@jenlampton
Copy link
Member

We need to build an update server for the core Update module to use. It's just a PHP script that returns current versions, and stable releases of core and contrib.

See the associated issue for Update.module in core itself at backdrop/backdrop-issues#396.

@quicksketch
Copy link
Member

There are a lot of questions around how this should be implemented. We could try an leverage the existing Project module code, or we could build this up using an entirely different approach. Considering we're going to be aggregating data from Github (or potentially other sources), Project module will likely need some pretty drastic adjustments to make it suitable for our purposes.

I do think we should emulate a few things about the way drupal.org implemented this:

  • Make the flagship site (backdropcms.org) supply the version information, because it's where users are going register their projects in the first place.
  • Mask the flagship site with an aliased domain (updates.backdropcms.org) that can be placed behind a CDN and potentially using different web servers. Point the update.module at this aliased domain.
  • Restrict the aliased domain to only return pages under a certain path (updates.backdropcms.org/release-history).

At least I believe this mirrors the drupal.org approach. It makes implementation fairly straight-forward by keeping us within a single code-base (within the flagship site) and gives us the ability to separate out caching mechanisms for updates from the rest of the site.

@quicksketch
Copy link
Member

We've been talking about setting up a "shim" server (backdrop/backdrop-issues#396) so for now I've configured updates.backdropcms.org to the same server as backdropcms.org, and set it up to return a 501 Not Implemented, which seems perfect for our needs until we can aggregate and have this data returned.

See https://updates.backdropcms.org/release-history/

@jenlampton
Copy link
Member Author

Nice one :)

@quicksketch
Copy link
Member

Note that before we can even start on this, we need to do #8 first, since we can't provide a list of updates centrally until we have a central repository in the first place.

@quicksketch
Copy link
Member

Also related to this issue is adding Backdrop release information to the GitHub hosted packages. See #51.

@quicksketch
Copy link
Member

Lots of progress on this over in #8 (comment), which is an update on how project.module is coming along. Project release module is now fully working in generating XML release files on cron jobs. I'll continue updating here occassionally, but the main work on this is happening in project module itself: http://github.com/backdrop-contrib/project.

@quicksketch
Copy link
Member

We flipped the switch on the update server on Monday. Sure is great to see that amazing "Up to date" message!

updates

All existing Backdrop sites should now start receiving update information. All versions of core will immediately start getting updates, but only "official" releases of modules will work (those that have had their .info files modified with packaging information).

Looks like @Graham-72 noticed as soon as the switch was flipped: https://twitter.com/Oliver7G/status/602827343212711936 😉

Let's open new issues dealing with the update server either directly against Project module or in this queue if it's BackdropCMS.org specific.

@klonos
Copy link
Member

klonos commented May 28, 2015

Hurray!!! 🎉

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

No branches or pull requests

3 participants