nextcloud / updater

:arrows_counterclockwise: The updater app to keep your Nextcloud up-to-date
GNU Affero General Public License v3.0
45 stars 33 forks source link

Updates don't work since release 21 `Parsing response failed` #542

Closed Mediaf closed 6 months ago

Mediaf commented 11 months ago

⚠️ This issue respects the following points: ⚠️

Bug description

Each time I try to update from version to the next proposed since version 21, I'm stuck in the page "updater" At each step I get an error "Parsing response failed." When I click on "Show detailed response", I see an html encoded text explaining the response, but the tool doesn't seems to understand this response because of the html syntax for example on "Check for write permissions", the detailed response is :

{"proceed":false,"response":["\/var\/www\/html\/nextcloud\/updater\/..\/.htaccess","\/var\/www\/html\/nextcloud\/updater\/..\/.user.ini"]}

because my .htaccess and .user.ini files aren't owned by the apache user

But the worst problem is that when one step is successful, I'm also blocked and I get "Parsing response failed" while the detailed response is

{"proceed":true}

I don't understand why the response is html encoded and why the tool doesn't understand it. I managed to pass some steps, but when I come to "Delete old files", the updater definitively stops 'cause it has'nt anymore code to execute !

So for all versions from 20 to 25, i had to update nextcloud by hand and it's a bit boring

Steps to reproduce

1.Click on "open updater system"

  1. launch update
  2. be blocked

Expected behavior

The updater should run from the start to the end without be blocked

Installation method

Other Community project

Nextcloud Server version

25

Operating system

RHEL/CentOS

PHP engine version

PHP 7.4

Web server

Apache (supported)

Database engine version

MariaDB

Is this bug present after an update or on a fresh install?

Upgraded to a MAJOR version (ex. 22 to 23)

Are you using the Nextcloud Server Encryption module?

Encryption is Disabled

What user-backends are you using?

Configuration report

{
    "system": {
        "instanceid": "***REMOVED SENSITIVE VALUE***",
        "passwordsalt": "***REMOVED SENSITIVE VALUE***",
        "secret": "***REMOVED SENSITIVE VALUE***",
        "trusted_domains": [
            "192.168.121.5",
            "81.1.19.4",
            "nuage.mimizan.com"
        ],
        "datadirectory": "***REMOVED SENSITIVE VALUE***",
        "dbtype": "mysql",
        "version": "24.0.12.1",
        "overwrite.cli.url": "https:\/\/81.1.19.4\/nextcloud",
        "dbname": "***REMOVED SENSITIVE VALUE***",
        "dbhost": "***REMOVED SENSITIVE VALUE***",
        "dbport": "",
        "dbtableprefix": "oc_",
        "dbuser": "***REMOVED SENSITIVE VALUE***",
        "dbpassword": "***REMOVED SENSITIVE VALUE***",
        "memcache.local": "\\OC\\Memcache\\APCu",
        "default_language": "fr",
        "force_language": "fr",
        "mysql.utf8mb4": true,
        "installed": true,
        "maintenance": false,
        "theme": "",
        "loglevel": 2,
        "allow_local_remote_servers": true,
        "onlyoffice": {
            "verify_peer_off": true
        },
        "mail_from_address": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpmode": "smtp",
        "mail_sendmailmode": "smtp",
        "mail_domain": "***REMOVED SENSITIVE VALUE***",
        "mail_smtphost": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpport": "25",
        "mail_smtpauthtype": "LOGIN",
        "mail_smtpauth": 1,
        "mail_smtpname": "***REMOVED SENSITIVE VALUE***",
        "mail_smtppassword": "***REMOVED SENSITIVE VALUE***",
        "updater.secret": "***REMOVED SENSITIVE VALUE***",
        "updater.release.channel": "stable",
        "app_install_overwrite": [
            "documentserver_community"
        ]
    }
}

List of activated Apps

Enabled:
  - accessibility: 1.10.0
  - activity: 2.16.0
  - admin_audit: 1.14.0
  - bruteforcesettings: 2.4.0
  - calendar: 3.5.7
  - circles: 24.0.1
  - cloud_federation_api: 1.7.0
  - comments: 1.14.0
  - contactsinteraction: 1.5.0
  - dashboard: 7.4.0
  - dav: 1.22.0
  - federatedfilesharing: 1.14.0
  - federation: 1.14.0
  - files: 1.19.0
  - files_antivirus: 5.2.2
  - files_pdfviewer: 2.5.0
  - files_rightclick: 1.3.0
  - files_sharing: 1.16.2
  - files_trashbin: 1.14.0
  - files_versions: 1.17.0
  - files_videoplayer: 1.13.0
  - firstrunwizard: 2.13.0
  - logreader: 2.9.0
  - lookup_server_connector: 1.12.0
  - nextcloud_announcements: 1.13.0
  - notifications: 2.12.1
  - oauth2: 1.12.0
  - onlyoffice: 7.7.0
  - password_policy: 1.14.0
  - photos: 1.6.0
  - privacy: 1.8.0
  - provisioning_api: 1.14.0
  - quota_warning: 1.16.0
  - ransomware_protection: 1.14.0
  - recommendations: 1.3.0
  - serverinfo: 1.14.0
  - settings: 1.6.0
  - sharebymail: 1.14.0
  - support: 1.7.0
  - survey_client: 1.12.0
  - text: 3.5.1
  - theming: 1.15.0
  - twofactor_backupcodes: 1.13.0
  - updatenotification: 1.14.0
  - user_status: 1.4.0
  - viewer: 1.8.0
  - weather_status: 1.4.0
  - workflow_pdf_converter: 1.9.1
  - workflowengine: 2.6.0
Disabled:
  - contacts: 4.2.5
  - documentserver_community: 0.1.9
  - encryption
  - files_external
  - mail: 1.12.9
  - officeonline: 1.1.4
  - pdfdraw: 0.1.2
  - printer: 0.0.5
  - richdocuments: 5.0.11
  - spreed: 13.0.11
  - systemtags: 1.10.0
  - user_ldap
  - wopi: 3.5.11

Nextcloud Signing status

No errors have been found.

Nextcloud Logs

Too long : 90 Mo

Additional info

No response

joshtrichards commented 11 months ago

This may be related to nextcloud/updater#90 which we should probably confirm and merge...

joshtrichards commented 11 months ago

So for all versions from 20 to 25, i had to update nextcloud by hand and it's a bit boring

Do you a mean fully manual installation or simply running the updater from the CLI instead of the web UI?

The parsing matter should only impact web-based runs I believe...

Mediaf commented 11 months ago

Hello, Thanks for your answer. I had to do a full install, like a new one : download the next release archive, unzip it to the server, copy it to the nextcloud path, change the owner to apache:apache, then open the homepage to do the update. For me, the problem seems to be that the updater doesn't understand the returned value {"proceed":true} because it is html encoded.

caco3 commented 11 months ago

As a note, I also get this error on step 5. There it is caused by a too low PHP memory limit (as indicated by several forum threads). Increasing this limit and deleting the .step file solved it for me.

joshtrichards commented 6 months ago

Duplicate of nextcloud/updater#88