Dashboard Update Stopped Working

Permalink 1 user found helpful
Hello good people!

I have had this problem for quite a while: Using the Dashboard -> System & Settings -> Update concrete5 in version 8.4.4 always returns the message "No updates are ready to be installed." (and this is happening with several production instances of C5).

I understand that the latest versions are not added immediately to the update system, but this has been a problem that I've had for over a year so I think the problem is elsewhere. Tracing the code (Update.php and Client.php) I see that the URL to check for updates is:

https://www.concrete5.org/tools/update_core...

...which rather than responding with expected JSON, faithfully responds with "null" - which is interpreted as no updates available. The response object give us "HTTP/1.1 200 OK" (using Content-Type: text/html; charset=UTF-8) so we know that it is connecting to the server. I also see that it's going through CloudFlare. It appears to be coming from a Concrete5 server as it trying to set a cookie ("CONCRETE5").

Question: Should this service always return something? ...or does it return "null" if it does not get the proper POST values ("LOCALE", "BASE_URL_FU" and "APP_VERSION") as a security precaution?

I'd really like to update Concrete5 via the Dashboard, not to mention this will encourage me/others to install the latest security updates, helping keep the good name of Concrete5 intact.

Many thanks in advance for any help!
Cheers,

Alex

alexaalto
 
ConcreteOwl replied on at Permalink Reply
ConcreteOwl
When you go to the 'Extend Concrete' page do you see a message at the bottom about your site being connected to the community.
If it says you are not connected to the community. that will be your problem.
In this case make sure your site is listed in your conceret5.org profile as a 'Project'
alexaalto replied on at Permalink Reply
alexaalto
Thanks ConcreteOwl,

Yes - all sites are connected to the community. Perhaps the only thing to note is the URL that is registered is different than what is in use (and I can't seem to change this). That said, should I really be getting "null" as a response? (...or is this a security thing?)

Cheers,

Alex
alexaalto replied on at Permalink Reply 1 Attachment
alexaalto
...well this is interesting! I thought I'd try deleting the original project and reconnecting to correct the difference with the URL. I did this successfully only to see the version of Concrete5 does not appear like it used to. It should say 8.4.4 but is blank.
tallacman replied on at Permalink Reply
tallacman
same problem here.

If you are already on v8
ftp the latest concrete core into your root (backup the old core first)
then visit the url below (prefixed with your site url of course)

then just reload a page
alexaalto replied on at Permalink Reply
alexaalto
Thank you tallacman,

I have already updated my C5 site manually (presuming that is what you are suggesting I do) with the hopes that it will fix this issue, but it hasn't yet since versions at least as old as 8.2.x. It seems to be something else - and I'm ultimately wondering about how the update URL is supposed to respond.

Cheers,

Alex
hunterwebs replied on at Permalink Reply
Has this been resolved yet? I am having the same problem as well.

The address Concrete5 pings always returns a string of "null". Even after connecting to the community and adding the project (which I did not realise was a requirement?)

I have also tried fixing the typo "BASE_URL_FU" to "BASE_URL_FULL" which has not made a difference. I have also tried altering the BASE_URL_FULL to be with http, with https and without. All with the same result.

How do you fix this?
alexaalto replied on at Permalink Reply
alexaalto
Sadly I have yet to find a solution and have been forced to manually update all the instances of Concrete5. As there hasn't been a release since, I don't know if the latest version fixes this issue.
hunterwebs replied on at Permalink Reply
Thanks for the reply.

In the end I gave up and wrote a shell script instead. It downloads the latest version fromhttps://concrete5.org/latest.zip... and unzips it, then empties the concrete folder and puts the contents of the ZIPs concrete folder in there instead. Then deletes the ZIP and unneeded files from the ZIP when done.

According to the heading "Replacing the original concrete Directory (Version 8 and above)" that should be sufficient.https://documentation.concrete5.org/developers/installation/upgradin... With a couple of extra steps that are sometimes needed depending on the version.

Too bad the dashboard update doesn't seem to work. Is there a server or account requirement that isn't listed in the documentation? I get that feeling.
alexaalto replied on at Permalink Reply
alexaalto
I too have wondered is there was some sort of concrete5.org account requirement - and have even written the good people at Concrete5 regarding this, but never received a reply.

In any event, your solution is pretty cool. One could even make a cron job and add code to check if the downloaded zip is a newer version before unzipping.

Thanks for a possible solution.
Cheers,

Alex