Skip to content

Port Drupal 10 appliance to TurnKey 19 - #11

Open
lirazsiri wants to merge 8 commits into
masterfrom
wish/drupal10-v19-trixie
Open

Port Drupal 10 appliance to TurnKey 19#11
lirazsiri wants to merge 8 commits into
masterfrom
wish/drupal10-v19-trixie

Conversation

@lirazsiri

Copy link
Copy Markdown
Member

Summary

  • port the Drupal 10 appliance to TurnKey 19 on Debian Trixie
  • update application installation, configuration, and runtime integration for the supported Trixie stack
  • add executable v19 acceptance coverage and retain the accepted migration evidence

Validation

  • passed the configured Trixie root build in the Docker-based TKLDev 19 harness
  • passed noninteractive firstboot and the primary application workflow
  • passed dependency provenance and updater checks recorded in docs/v19.0-testing.md
  • independent execution and PR-scope review returned SHIP
  • git diff --check origin/master...ea71a1ed5d4aedbee2be695f809d612529fbfdbe

Move the appliance to PHP 8.4 and an exact maintained Drupal, Drush, and contributed-module set. Pin Guzzle 7.15.2 because the upstream Drupal lock selected a release affected by two current advisories, and replace schema-dependent welcome-page inserts and the retired Drush security command with supported APIs.

Add functional acceptance coverage for firstboot login, authenticated web page creation, database persistence, service restarts, bundled modules, management endpoints, and non-mutating update paths. A disposable Trixie Composer preflight verified the selected dependency set and a clean advisory audit.
Composer 2.8 writes its successful advisory summary outside the stdout stream consumed by the old wording assertion. The exact appliance had already built, booted, completed firstboot, and reached this audit check.

Rely on the command exit status, which is the supported machine-readable pass or fail contract, and keep the migration lane focused on appliance behavior.
Drupal 10.6.15 supersedes the previously tested patch and is the current supported production release in the 10.6 line. Build and acceptance expectations now target that release.

Let core-recommended retain its tested Guzzle 7.15.3 lock instead of downgrading it with a direct requirement. Clarify the official Composer source channels and record the prior exact run separately from the current candidate preflight.

Verified on Debian Trixie with PHP 8.4.24 using Composer platform checks, lock validation, audit, and a dry-run update. Shell and Python syntax, required test inputs, and Trixie package-plan availability also pass.
Record the passing exact run for the Drupal 10.6.15 release candidate so the documented README crosswalk is backed by reproducible appliance evidence. The run covered build, boot, firstboot, administrator authentication, content persistence, management endpoints, audit and updater behavior without requiring another product fix loop.

Verified with exact run 20260829t160411z-5113-11051, shell syntax checks, Python AST parsing, and git diff validation.
The scheduled helper called turnkey-drush as www-data, but turnkey-drush itself must start as root so it can switch to the web account. Run the cron entry as root and exercise the helper through that configured identity during acceptance.

This is product fix loop 2/6. Verified with shell syntax checks, a disposable Trixie fixture using the real helper and wrapper, and git diff validation.
Extend exact acceptance to prove that the real turnkey-drush wrapper reaches Drupal as www-data after the scheduled helper starts through its root cron identity. This is an evidence correction and consumes no product fix loop.

Verified with shell syntax and git diff validation.
Drush 13 removed pm:security, causing the scheduled alert helper to fail even after its cron privilege was corrected. Audit the locked dependency set with Composer, ignore abandoned-package status for alert decisions, and mail root when Trixie's Composer reports a security finding.

This is product fix loop 3/6. Verified with shell syntax, diff validation, and disposable Trixie fixtures covering clean and advisory exit paths through the real turnkey-composer wrapper.
Record the passing exact run after replacing the removed Drush security command with the supported Composer audit path. The evidence now covers the real root cron entry, application-user wrapper, all prior Drupal main flows, supported updater channels, and the accurate product fix count of three out of six.

Verified with exact run 20260829t164241z-6730-30442, shell syntax checks, Python AST parsing, evidence hash matching, and git diff validation.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant