[policy, no patch] To enable or use Automatic Updates, require "proc_open" to not be disabled

Created on 9 June 2021, over 3 years ago
Updated 16 September 2024, 3 months ago

Problem/Motivation

Some hosting plans disable exec and similar functions/operators from PHP by default.

There are several places where automatic updates can benefit from using exec. I'll add more to this list, but for starters, being able to call rsync from Composer Stager ( #3199171: Automatic updates: For MVP, instead of an a/b bootloader, implement a semi-atomic composer update with a brief maintenance-mode window β†’ ).

Do we need to implement a pure PHP fallback for sites on hosting plans that disable exec? Or, do such hosting plans allow for that configuration to be changed, in which case, should we make enabling exec a requirement for being able to use automatic updates?

Steps to reproduce

Proposed resolution

Require proc_open() to be available in order to use package_manager / automatic updates. This will be enforced by a validator in package_manager.

Remaining tasks

  • Check if package_manager/automatic updates already includes a hook_requirements() for proc_open() and open an issue if it does not

User interface changes

API changes

Data model changes

Release notes snippet

🌱 Plan
Status

Fixed

Version

11.0 πŸ”₯

Component
UpdateΒ  β†’

Last updated 6 days ago

  • Maintained by
  • πŸ‡ΊπŸ‡ΈUnited States @tedbow
  • πŸ‡ΊπŸ‡ΈUnited States @dww
Created by

πŸ‡ΊπŸ‡ΈUnited States effulgentsia

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Comments & Activities

Not all content is available!

It's likely this issue predates Contrib.social: some issue and comment data are missing.

  • πŸ‡³πŸ‡ΏNew Zealand quietone
  • πŸ‡¬πŸ‡§United Kingdom catch

    As with the rsync issue, I think we should commit automatic updates with just a hook_requirements() check or similar, and if we get lots of reports of hosting environments disabling proc_open() we can revisit things later.

  • Status changed to RTBC 4 months ago
  • πŸ‡ΊπŸ‡ΈUnited States effulgentsia

    Retitling and RTBCing for visibility.

  • πŸ‡³πŸ‡ΏNew Zealand quietone

    It is not clear to me what has been agreed to here. The proposed resolution in the Issue Summary is to do research and discuss but in #9 catch suggests adding hook_requirements().

  • πŸ‡¬πŸ‡§United Kingdom catch

    Updated the issue summary.

  • Status changed to Fixed 3 months ago
  • πŸ‡¬πŸ‡§United Kingdom catch

    I checked automatic_updates, and package_manager already has a proc_open() validator, so I think that might be enough to mark this fixed.

    package_manager/src/Validator/ComposerValidator.php. Slightly updated the issue summary, and closing out.

  • πŸ‡³πŸ‡ΏNew Zealand quietone

    @catch, thanks for the update. I checked the code as well, I agree this is fixed and does require any documentation, other than in the module.

  • Automatically closed - issue fixed for 2 weeks with no activity.

Production build 0.71.5 2024