0

I have a module which I want to auto update (as per the JED requirements). I've set up the manifest file in the same way as my other modules (which work for auto update) but I can't get this module to work.

The manifest file has the lines (at the bottom)

</fields>
    </config> 
<updateservers>
    <server type="extension" enabled="1" element="mod_page_display" name="module name">https://update.com/updates/module.xml</server>
</updateservers>    
</extension>

I'm pretty sure that the manifest is correct.

When I manually install the module everything is fine. However the auto update system doesn't pick it up and look for changes.

I've checked the #__update_sites table and the module isn't in the table so it's not being picked up on install and set up for auto updates.

I'm not sure what debugging I can do now:

checked the module can be installed manually checked the manifest file against a work manifest to check for errors checked the update_sites table to see if it's included

Can someone point me at resources or suggest other things I can try?

I've read https://docs.joomla.org/Deploying_an_Update_Server https://docs.joomla.org/J3.x:Creating_a_simple_module/Adding_Auto_Update

and a bunch of other pages. But as far as I can tell I've implemented the manifest file correctly and so it the module should show up in the update_ sites table.

the update XLM file is

<?xml version="1.0" encoding="utf-8"?>
<updates>
    <update>
        <name>Page display</name>
        <description>Page display</description>
        <element>mod_page_display</element>
        <type>module</type>
        <client>0</client> 
        <version>1.1.3</version>
        <downloads>
            <downloadurl type="full" format="zip">https://update.com/update/?dummy.zip</downloadurl>
        </downloads>
        <tags>
        <tag>stable</tag>
        </tags>
        <maintainer>Websites4Christians</maintainer>
        <maintainerurl>https://update.com</maintainerurl>
        <targetplatform name="joomla" version="3.*"/>
    </update>
</updates>
  • Can you add the contents of your update XML to the question please? – Lodder May 12 at 7:06
  • I saw in the code that the joomla team were wanting to move away from <client> being 0 or 1 to using <client>site</client> or admin. Not sure if that will fix it, but would be worth trying. – Robbie Jackson May 12 at 8:52
  • #Robbie Jackson - thanks that didn't work. The module isn't registering in the update_sites table so no attempt is being made to reach the remote xml file. – user1616338 May 12 at 9:02
  • It adds the extension to the updates_sites table in the plugin Extension – Joomla (ie in plugins/extension/joomla/joomla.php) in the onExtensionAfterInstall method. So if you can do debug you can set a breakpoint at that point and check it reaches it ok when you install your module. The relevant code is in processUpdateSites() which calls addUpdateSite() so if you walk through that with the debugger you should find the problem. – Robbie Jackson May 12 at 15:37
  • It checks that your update server URL isn't already present in the location column of the update_sites table. So if you have another extension with the same location as your new module then it won't insert the new one into the table. – Robbie Jackson May 12 at 15:38

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.