Port Concrete CMS appliance to TurnKey 19 - #26
Open
lirazsiri wants to merge 5 commits into
Open
Conversation
Concrete CMS is not packaged by Debian, so install the official 9.5.2 release asset and verify GitHub's published SHA-256 before extraction. Record the upstream tag commit and source metadata in the appliance. Adapt the installer invocation to the current non-root CLI contract, use MariaDB 11-compatible account creation, preserve safe wrapper argument boundaries, and run the upstream scheduler through cron. Add focused Docker acceptance for firstboot administrator login, page creation and persistence, jobs, scheduler, management endpoints, upstream update discovery, and signed Trixie package candidates. A disposable Trixie preflight completed the full 9.5.2 install on PHP 8.4.24 and MariaDB.
Concrete's path resolver has no HTTP site context in the focused CLI fixture, so resolving '/' produced a page object without a parent collection ID. Ask the site service for the default site's actual home page before creating the acceptance page. Verified in disposable Debian Trixie with Concrete CMS 9.5.2, PHP 8.4 and MariaDB: page creation returned cID 269 and the path, title and HTML content all read back from the application database.
Concrete CMS 9 replaced the legacy generate_sitemap job with the c5:sitemap:generate command. Exercise that supported command, verify it writes sitemap XML, and retain the scheduler check without charging the stale test assertion against the appliance fix-loop budget. Verified with bash syntax checks, shellcheck, and the official Concrete CMS 9 CLI and maintenance-task documentation.
Concrete CMS cannot infer a canonical site URL in a portable appliance. Pass the test HTTPS base URL to the supported sitemap command so the acceptance check exercises generation without imposing a deployment-specific hostname on users. Verified with bash syntax checks, shellcheck, and the command contract emitted by Concrete CMS 9.5.2.
The supported c5:update command executed successfully, but its Concrete CMS 9.5 help text no longer contains the legacy phrase used by the acceptance grep. Check command availability by exit status and record the retained run that proved the primary appliance flows plus sitemap generation. Verified with bash syntax checks, shellcheck, retained-evidence checksums, and the official GitHub latest-release API for Concrete CMS 9.5.2 and its published SHA-256.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Validation
e14624d20260825t073842z-5944-22398passed build, firstboot, application flow, persistence, services, and updater execution before a wording-only test assertiona2cd8a01a32a5ed8d3ebb8d159028f5b5dff9ee85043d78f4a9c57046e018bd4verifiedgit diff --check origin/master...e14624d