Can't provision staging server after upgrade from PHP 7.1 to 7.4

Hi, I’m trying to upgrade the PHP version on a site, I followed this thread and it worked nicely on my development site - I basically changed all instance of PHP “7.1” in the trellis directory to “7.4”, and required a PHP version of at least 7.4 in composer and ran composer update.

I happily pushed the update to the staging site, but when I attempted to provision the server, I received the following error:

TASK [Install Python 2.x] *************************************************************************************    ***********************************
    System info:
      Ansible 2.3.0.0; Linux
      Trellis at "Update PHP from 7.1 to 7.4"
    ---------------------------------------------------
    Shared connection to 107.170.41.149 closed.

    fatal: [107.170.41.149]: FAILED! => {"changed": false, "failed": true, "rc": 100, "stderr": "Shared connection to 107.170.41.149 closed.\r\n", "stdout": "/usr/bin/python\r\nE: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).\r\n", "stdout_lines": ["/usr/bin/python", "E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution)."]}

The staging server cannot be provisioned, and when I run php -v on the server it says it’s running PHP 7.2.

How do I update PHP? I am avoiding doing it manually, because my gut’s telling me there’s a special roots way.

Below is the verbose output of the error from provisioning the staging server:

System info:
  Ansible 2.3.0.0; Linux
  Trellis at "Update PHP from 7.1 to 7.4"
---------------------------------------------------
OpenSSH_7.6p1 Ubuntu-4, OpenSSL 1.0.2n  7 Dec 2017
debug1: Reading configuration data /home/jill/.ssh/config
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug1: auto-mux: Trying existing master
debug2: fd 3 setting O_NONBLOCK
debug2: mux_client_hello_exchange: master version 4
debug3: mux_client_forwards: request forwardings: 0 local, 0 remote
debug3: mux_client_request_session: entering
debug3: mux_client_request_alive: entering
debug3: mux_client_request_alive: done pid = 16490
debug3: mux_client_request_session: session request sent
debug1: mux_client_request_session: master session id: 2
debug3: mux_client_read_packet: read header failed: Broken pipe
debug2: Received exit status from master 100
Shared connection to 107.170.41.149 closed.

fatal: [107.170.41.149]: FAILED! => {
    "changed": false, 
    "failed": true, 
    "rc": 100, 
    "stderr": "OpenSSH_7.6p1 Ubuntu-4, OpenSSL 1.0.2n  7 Dec 2017\r\ndebug1: Reading configuration data /home/jill/.ssh/config\r\ndebug1: Reading configuration data /etc/ssh/ssh_config\r\ndebug1: /etc/ssh/ssh_config line 19: Applying options for *\r\ndebug1: auto-mux: Trying existing master\r\ndebug2: fd 3 setting O_NONBLOCK\r\ndebug2: mux_client_hello_exchange: master version 4\r\ndebug3: mux_client_forwards: request forwardings: 0 local, 0 remote\r\ndebug3: mux_client_request_session: entering\r\ndebug3: mux_client_request_alive: entering\r\ndebug3: mux_client_request_alive: done pid = 16490\r\ndebug3: mux_client_request_session: session request sent\r\ndebug1: mux_client_request_session: master session id: 2\r\ndebug3: mux_client_read_packet: read header failed: Broken pipe\r\ndebug2: Received exit status from master 100\r\nShared connection to 107.170.41.149 closed.\r\n", 
    "stdout": "/usr/bin/python\r\nE: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).\r\n", 
    "stdout_lines": [
        "/usr/bin/python", 
        "E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution)."
    ]
}

Does this help?

Thanks for your answer strarsis. It looks like the error message is similar, but the environment is totally different :frowning:

This topic was automatically closed after 42 days. New replies are no longer allowed.