Skip to content

Instantly share code, notes, and snippets.

@dajare
Created January 20, 2011 15:53
Show Gist options
  • Save dajare/788086 to your computer and use it in GitHub Desktop.
Save dajare/788086 to your computer and use it in GitHub Desktop.
WolfCMS Plugins XML file
<wolf-plugins>
<wolf-plugin>
<id>ckeditor</id>
<version>1.2</version>
<status>stable</status>
</wolf-plugin>
</wolf-plugins>
@craigrodway
Copy link

Could Wolf cache the version information somewhere? Attach a TTL to it (X days?), and update when it's expired. Also update when new plugins are installed.

Instead of using another service and having separate XML files - what about having the repository doing both, dynamically? A) Generate a short-ish URL for each plugin (plugins.wolfcms.org/a12bc3) and B) have some code respond to that which sends the relevant XML header + content.

@mvdkleijn
Copy link

I was already planning to add some sort of cache to Wolf CMS for not only the plugin update information, but also the Wolf CMS version number information. It just been a low priority for now. There are more points (Gravatar results for example) where Wolf could cache information so perhaps the time is right to start thinking about and implementing a central cache directory for Wolf.

As for the XML... my plan was to dynamically generate the XML "file" from repo information. A short url available an accompanying "hits for the update information" is also very possible. We actually already have a short code available (more or less) http://www.wolfcms.org/repository/123 is the view for a plugin's details. Apart from adding a CNAME to DNS to create plugins.wolfcms.org, it shouldn't be much work to add a path to the dynamically generated XML.

By the way... as soon as I've cleaned up the code a bit, I'll make the repository plugin available through GitHub so the community can help add to / fix the repository.

@dajare - Sorry for the run away discussion here David. :P

@mvdkleijn
Copy link

Just another short additional remark concerning the repo... I want to add OAuth support so people can change plugin repository information through an API. This would allow developers to write/use a small command line script to create a release in one go:

  • Tag release in GitHub
  • Package up release in zip file
  • Create new release in plugin repo
  • Upload zip file to plugin repo
  • Update other plugin repo information
  • Done. (all automated)

@craigrodway
Copy link

Great ideas, I think all of those would be very valuable to and welcomed by the community.

@dajare
Copy link
Author

dajare commented Jan 21, 2011

mvdkleijn wrote:

@dajare - Sorry for the run away discussion here David. :P

Not at all! Putting up a gist like this that could spark a conversation like the one you and Craig are having is about right for my level of contribution! :D Great stuff!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment