Skip to content

Bug fixes pr devel 1.x #719

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 257 commits into from
Jul 16, 2025
Merged

Bug fixes pr devel 1.x #719

merged 257 commits into from
Jul 16, 2025

Conversation

gregharvey
Copy link
Member

No description provided.

EmlynK and others added 30 commits April 22, 2022 11:28
* Don't recurse through site directory when setting permissions during config_generate step.

* Update drupal7 config_generate perms update task and use true/false instead of yes/no.
* Pass -l option in drush commands to specify site name, which should match the site folder name.

* Move -l option in drush commands to the first option instead of the last.
* Attempt to fix static credentials handling when deploying to an ASG.

* Include build_type in static password file location.

* Move to using new location for static credentials handling, but try to catch any legacy stuff too, for now.

* Add a couple of comments to legacy handling of static credentials.
* Add a files_sync role.

* Clear up some comments, add temp_dir variable and use rsync with command module instead of synchronize module, in files_sync role.

* Need trailing slash on src when syncing files to destination server so the contents get synced and not the parent directory itself.

* Use rsync instead of copy when syncing files to target server as copy is so slow.

* Ensure file sync tasks are run only once.
* Add a drupal_sync_tasks role to run Drupal specific tasks during syncs.

* Move sync database_apply files into tasks subdirectory.

* Woops, used bad role names in sync database update roles.

* Remove feature reverting from drupal7 database_apply sync role.
* Fixing GRANT query for MySQL > 8.0.

* Create what though?
* Adding SquashFS option to syncing.

* Make 'tarball' the default mount type so nothing existing breaks.

* Altering deploy_path so we can build in another location for SquashFS builds.

* Ensuring the build dir exists if doing a SquashFS build.

* Force symlink creation as the deploy dir may not exist yet.

* Running mount commands with sudo.

* Tweaking link command and destination for live links.

* Slight bug in link path handling for SquashFS.

* Checking for existing mount and using remount operation.

* Stop ce-deploy trying to delete from read-only SquashFS mount.

* Formatting error, these special jinja2 things are not filters - no spaces.

* Reloading services to make sure mounting doesn't fail.

* Picking more sensible loop var name.

* Moving to shell for mount check and fixing jinja2 filter names.

* Trying with the posix mount module instead of command.

* Working through user/sudo issues.

* Altering symlink handling slightly so we have the deploy directory always set.

* Simplifying 'when' checks.
* Use a different variable for config imports during a sync so they can be optional.

* Actually, no. Use a variable to determine if config should be imported during a sync.

* Fix some logic with config import during syncs and add a comment to explain when the task runs.
* Adding SquashFS option to syncing.

* Make 'tarball' the default mount type so nothing existing breaks.

* Altering deploy_path so we can build in another location for SquashFS builds.

* Ensuring the build dir exists if doing a SquashFS build.

* Force symlink creation as the deploy dir may not exist yet.

* Running mount commands with sudo.

* Tweaking link command and destination for live links.

* Slight bug in link path handling for SquashFS.

* Checking for existing mount and using remount operation.

* Stop ce-deploy trying to delete from read-only SquashFS mount.

* Formatting error, these special jinja2 things are not filters - no spaces.

* Reloading services to make sure mounting doesn't fail.

* Picking more sensible loop var name.

* Moving to shell for mount check and fixing jinja2 filter names.

* Trying with the posix mount module instead of command.

* Working through user/sudo issues.

* Altering symlink handling slightly so we have the deploy directory always set.

* Simplifying 'when' checks.

* Adding a revert behaviour for SquashFS.

* Making some wording a little less ambiguous.

* Fixing bad image path and adding clauses to stat check.

* Trying to make remounting SquashFS images a bit safer.

* Adding when clauses to SquashFS image path check.

* Removing revert code, as it cannot work.
…159)

* Add cache clears to Drupal deployments, before database updates and config import are run.

* Move cache clears out of meta roles and only run in database_apply role on non-initial builds.

* Add cache clear stuff to drupal7 database_apply role.
)

* Avoid leaving exponentially growing sqsh files in build locations!

* Use mount point instead of /tmp for stowing previous sqsh file.
* Avoid leaving exponentially growing sqsh files in build locations!

* Use mount point instead of /tmp for stowing previous sqsh file.

* Making sure image/tarball filenames are build specific in /tmp.
* Removing unnecessary lines in Drupal config generation.

* Drupal 7 lacked the install_command var.
* Ensuring dump directory exists on backup step.

* Acts on shared storage, so can run once.
* Supporting option to suppress reverting backups.

* Fixing namespacing in database_backup role.
* Handling the 'drush deploy' command more elegantly for Drupal 8+.

* Changing logic to AND for cache rebuild.
Co-authored-by: Emlyn Kinzett <emlyn.kinzett@codeenigma.com>
* Handling the 'drush deploy' command more elegantly for Drupal 8+.

* Changing logic to AND for cache rebuild.

* Em's clear cache code needs to run for each 'site' too.
* cron job schedule params, namespaces

* drupal7-cron-params

* cron-job-schedule-params-fix-defaults
* Updating docs.

* Consistent drush handling in cron.

* Linting cruft and removing unimplemented drush.yml handling from D7.

* Refactor drush role to support new GitHub release format.

* Updating drush README.

* Casting the first part of the drush version string as an integer.

* Refactoring integer handling.

* Major version string will always be a string, assuming below 8 will never exist.

* Downloaded drush archive is remote, not local.

* Refactoring handling of .bin directory.

* Supporting drush-launcher.

* Removing drush installation support for Drupal 8 and above.

* Bad variable name in Drupal cron jobs.

* Fixing maintenance mode command linting and consistency.

* Moving chdir to args to see if it helps.

* Trying an actual 'cd' command inline.

* Cannot '&&' in a cmd.

* Trying drush's --root flag to set Drupal path.

* With --root we do not need chdir for drush.

* Revert "With --root we do not need chdir for drush."

This reverts commit d07aaf7.
* Better deploy_code role docs.

* roles path error in docs.

* roles path error in docs.

* Adding a note about deploy_previous handling for squashfs.
* cachetool_settings_and_drupal7_tasks_fix

* cachetool_settings_and_drupal7_tasks_fix

* cachetool_settings_and_drupal7_tasks_fix

* cachetool settings fixing condition and namespace

* fixing cachetool adapter options

* fixed var

* fixed var

* fixed var
gregharvey and others added 28 commits June 10, 2025 14:16
* Behat needs to change to the app directory to run.

* Allowing Behat tests to fail without stopping Ansible.

* Allowing the output of Behat tests to Ansible out.
* Allowing devs to skip creating a container.

* Allow ce-deploy to set target group deregistration delay.
* Making build tidying more efficient.

* Centralising the builds to delete calculation in _init.

* Handling a consistent variable for build directories returned in _init role.

* Correcting off by one error in keep builds.

* Moving cleanup builds calculation to a block that only runs on 'cleanup'.

* Cleaning up obsolete variable.
* Fixing linting so CI can work.

* More linting fixes.

* Downgrading Ubuntu due to Docker issues with ce-dev and latest.

* Making pipefail shell commands use /bin/bash.

* Adding pipefail code to cachetool installer block.

* Adding executable for drush install checker.

* Fixing D7 ctools behaviour to match features handling.

* Jinja2 template looking for settings.php using wrong path.

* Fixing config_generate for Drupal.

* Making host checking more robust.

* Removing variable declaration that will break host check.

* Allow us to use deploy_code with a completely custom build and do nothing.

* Make PHP cachetool install optional.

* Fixing bug introduced by failed_when - need to check for return code on mount points.

* Moving where opcache clears get called so they can be excluded if necessary.

* Fixing linting errors around white space.

* The unarchive module requires 'dest' to be a directory.

* Fixing Drupal example templates.

* Logically splitting tests and removing LGD because it's broken.

* Adding extra plugin LGD needs.

* Clearing stat and apcu cache for PHP by default.

* Adding some perms handling for Drupal 8+ config sync where deploy and web user are different.

* Rolling back APCu cache by default as the package must be installed.

* Making the remount squashfs code more defensive by using a block.

* Trying with 'throttle' keyword to restrict to one machine at a time.

* Sadly 'throttle' seems to work on a task level only, not a block level.

* Adding hash salt generation for Drupal 8+.

* Trying a different syntax for passing params to the password plugin.

* Forgot the constants import in plugin.

* Reinstating the SOPS plugin - we *do* need it.

* Making online/offline tasks use current live code/database.

* We need build paths to bring the site back online if it's a squashfs build.

* Ensuring _common.sh includes /etc/profile.d for Python venv path.

* Making linter happy.

* Using the drush_live_bin var in sync jobs for Drupal 8+.

* Fixing database dump revert.

* Fixing gunzip command.

* Having to do a double step to unpack SQL file in /tmp.

* Load bash profiles before executing a build.

* Fixing linting error, use -n instead of ! -z.

* Adding support for specifying path to Ansible and path to Python interpreter.

* Moving installation of cachetool to application includes, where they are PHP apps.

* Fixing minor typo.

* Cleaning up namespacing.

* Making quotes consistent.

* Making quotes consistent.

* Making quotes consistent.

* Allowing for Drupal cron rollback on revert.

* Only running maintenance mode enable on deploy.

* Moving previous_deploy_path out of the squashfs block.

* Committed installer by accident.

* Trying to fix CI.

* Ensuring ASG handling only runs once per server.

* Fixing namespaces flagged by linting.

* Only need to look up the SquashFS image once per cluster.

* Fixing docs and CI.

* Updating the main README in docs.

* Adding cron user back in, but omitted by default and commented out.

* Adding --set-gtid-purged=OFF param to default mysqldump command.

* Revert "Adding --set-gtid-purged=OFF param to default mysqldump command."

This reverts commit 972d8ff.

* Fixing linting error (no upper case chars in var names).

* Stopping builds if the track file and build path do not match.

* Trying casting build IDs as integers for comparison.

* Fixing uppercase letters in vars linting error.

* Removing self-maintained SOPS plugin because it is obsolete.
* Fixing linting so CI can work.

* More linting fixes.

* Downgrading Ubuntu due to Docker issues with ce-dev and latest.

* Making pipefail shell commands use /bin/bash.

* Adding pipefail code to cachetool installer block.

* Adding executable for drush install checker.

* Fixing D7 ctools behaviour to match features handling.

* Jinja2 template looking for settings.php using wrong path.

* Fixing config_generate for Drupal.

* Making host checking more robust.

* Removing variable declaration that will break host check.

* Allow us to use deploy_code with a completely custom build and do nothing.

* Make PHP cachetool install optional.

* Fixing bug introduced by failed_when - need to check for return code on mount points.

* Moving where opcache clears get called so they can be excluded if necessary.

* Fixing linting errors around white space.

* The unarchive module requires 'dest' to be a directory.

* Fixing Drupal example templates.

* Logically splitting tests and removing LGD because it's broken.

* Adding extra plugin LGD needs.

* Clearing stat and apcu cache for PHP by default.

* Adding some perms handling for Drupal 8+ config sync where deploy and web user are different.

* Rolling back APCu cache by default as the package must be installed.

* Making the remount squashfs code more defensive by using a block.

* Trying with 'throttle' keyword to restrict to one machine at a time.

* Sadly 'throttle' seems to work on a task level only, not a block level.

* Adding hash salt generation for Drupal 8+.

* Trying a different syntax for passing params to the password plugin.

* Forgot the constants import in plugin.

* Reinstating the SOPS plugin - we *do* need it.

* Making online/offline tasks use current live code/database.

* We need build paths to bring the site back online if it's a squashfs build.

* Ensuring _common.sh includes /etc/profile.d for Python venv path.

* Making linter happy.

* Using the drush_live_bin var in sync jobs for Drupal 8+.

* Fixing database dump revert.

* Fixing gunzip command.

* Having to do a double step to unpack SQL file in /tmp.

* Load bash profiles before executing a build.

* Fixing linting error, use -n instead of ! -z.

* Adding support for specifying path to Ansible and path to Python interpreter.

* Moving installation of cachetool to application includes, where they are PHP apps.

* Fixing minor typo.

* Cleaning up namespacing.

* Making quotes consistent.

* Making quotes consistent.

* Making quotes consistent.

* Allowing for Drupal cron rollback on revert.

* Only running maintenance mode enable on deploy.

* Moving previous_deploy_path out of the squashfs block.

* Committed installer by accident.

* Trying to fix CI.

* Ensuring ASG handling only runs once per server.

* Fixing namespaces flagged by linting.

* Only need to look up the SquashFS image once per cluster.

* Fixing docs and CI.

* Updating the main README in docs.

* Adding cron user back in, but omitted by default and commented out.

* Adding --set-gtid-purged=OFF param to default mysqldump command.

* Revert "Adding --set-gtid-purged=OFF param to default mysqldump command."

This reverts commit 972d8ff.

* Fixing linting error (no upper case chars in var names).

* Stopping builds if the track file and build path do not match.

* Trying casting build IDs as integers for comparison.

* Fixing uppercase letters in vars linting error.

* Removing self-maintained SOPS plugin because it is obsolete.

* Moving the 'keep' variable for builds to a single 'keep_builds' var in _init.

* Documentation updates.

* Catching use of old deploy_code vars.

* Adding an optional permissions fix for Drupal's 'sites' directory.

* Ensuring replacement variable is an integer.

* Moving the integer casting for keep_builds.
* more_specifix_names_to_clean_up

* more_specifix_names_to_clean_up
@gregharvey gregharvey merged commit 5def588 into devel-1.x Jul 16, 2025
2 checks passed
@gregharvey gregharvey deleted the bug_fixes-PR-devel-1.x branch July 16, 2025 13:17
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.

8 participants