Skip to content

Releases: gaambo/deployer-wordpress

v4.0.0

20 Mar 08:30
52e37ed

Choose a tag to compare

This release has been in the works for a long time. I've been using v4 on projects for nearly a year and it's working great!

v4 is a major version that adds a new packages system to support more custom code (multiple mu-plugins, plugins, themes), adds multisite support

Info: This release does not yet officially support Deployer v8, since it's not released yet. See #15

Key Changes

  • Uses current_path instead of symlinked release_path by default in the examples
  • Better Localhost Support: Proper context handling for local operations with consistent path resolution.
  • Multisite Support: Set wp/multisite flag for proper network-wide database URL replacements.
  • New Language Tasks: Tasks for syncing WordPress language files: languages:push, languages:pull, languages:sync, languages:backup:*
  • Code Quality: Autoloading, code-quality tools and test suite

New Packages System

Unified way to manage custom themes, plugins, and mu-plugins:

set('packages', [
    'custom-theme' => [
        'path' => '{{themes/dir}}/custom-theme',
        'assets' => true,
        'assets:build_script' => 'build',
        'vendors' => true,
    ],
]);

The old theme, plugin and mu-plugin tasks still exist and work. I'm planning to remove them in a future version. We recommend updating to the new package system.

New Recipes

  • recipes/simple.php - For standard rsync deployments
  • recipes/bedrock.php - For Roots Bedrock projects

⚠️ Breaking Changes

  1. current_path is now the primary deployment target
  2. Task file locations: Moved from src/tasks/ to tasks/
  3. Removed advanced recipe: Use simple or bedrock instead
  4. Removed :sync tasks: Use :push and :pull instead

Upgrading from v3.x

  1. Set current_path on all hosts (remote and localhost)
  2. Migrate to packages: Convert theme/plugin build configs to the new packages system. Optional, but recommended
  3. Update recipe: Switch to recipes/simple.php or recipes/bedrock.php
  4. Check examples: Review examples/simple/ or examples/bedrock/ for patterns
  5. Replace :sync tasks: Update any custom tasks using :sync to use :push or :pull

Documentation

See CHANGELOG.md for complete changes and README.md for updated documentation.

v3.1.0

21 Jun 09:28
4871059

Choose a tag to compare

  • Added a deploy:build_assets step into the default deploy task to build theme assets on local.
    This allows for easier overwriting this task (eg to build custom plugin assets) and fixes running duplicates on some configurations.

v3.0.0

07 Jun 06:46
c4e201f

Choose a tag to compare

  • Did a large refactor of paths (release_path, current_path, document_root)
  • Provide two recipes (base and advanced) and examples for both
  • v2.0.0 did not work with symlink deployments, this now works again (see #8)
  • Updated from Deployer 7.2 to 7.3
  • New config options (see set.php):
    • wp/configFiles for wp-config/wp-config-local files which should be protected by more restrict file permissions
    • wp/configFiles/permissions for the chmod permissions to apply to the configFiles
    • Removed document_root - use release_or_current_path instead
  • New/changed task names:
    • push_code now is called update_code again for parity with PHPDeployer.

Changes since v3.0.0-alpha

  • Fix: Composer default command not using composer_options variable.

Upgrading:

  • If you haven't upgraded to v2.0.0 yet, it's best to upgrade to 3.0.0 directly
  • Have a look at the example files. Your deploy.php will get much smaller and require less configuration.
  • Also the new version is more smiliar to PHPDeployers default common recipe.

v3.0.0-alpha

23 May 12:12

Choose a tag to compare

v3.0.0-alpha Pre-release
Pre-release
  • Did a large refactor of paths (release_path, current_path, document_root)
  • Provide two recipes (base and advanced) and examples for both
  • v2.0.0 did not work with symlink deployments, this now works again (see #8)
  • Updated from Deployer 7.2 to 7.3
  • New config options (see set.php):
    • wp/configFiles for wp-config/wp-config-local files which should be protected by more restrict file permissions
    • wp/configFiles/permissions for the chmod permissions to apply to the configFiles
    • Removed document_root - use release_or_current_path instead
  • New/changed task names:
    • push_code now is called update_code again for parity with PHPDeployer.

Most of it stems from the issues surfaced in #8

v2.0.0

20 Mar 15:49

Choose a tag to compare

  • Updated from Deployer 6.x to 7.x
    See docs for more information.
    Most notable changes:
    • New format for yml-files which can now also include configuration.
    • The local is not available any more. Instead once and runLocally should be used. For theme assets the example uses a function callback and the on helper to optionally run those build tasks on the local host.
    • When deploying you can't select a host by name or stage anymore. Instead you have to use labels (eg a stage label). If you've used dep deploy production you now have to use dep deploy stage=production and set the stage label in your yml file.
  • Switched to a single base recipe which can be included and built upon. See examples/deploy.php.
  • The new recipe and examples uses yml-files for project-specific configuration so the deploy.php is a dropin file and has no configuration in it.
  • PHP 8 compatibility.
  • Fixes issues with rsync flags/options and '.

Upgrading:
If you've used the default recipe it's probably easiest to copy the new example deploy.php and update your yml-file with project-specific configuration. If you have added any other tasks/features to your deploy.php make sure you upgrade them too.
If you've used most of the core functions of this library or just the examples, the upgrade should only take a few minutes.

v1.4.1

27 Apr 09:49

Choose a tag to compare

Added file-permission tasks to examples

v1.4.0

21 Jan 09:40

Choose a tag to compare

Adds WP-CLI tasks

v1.3.0

29 Jul 14:24

Choose a tag to compare

v1.3.0

v1.2.0

10 Jun 12:32

Choose a tag to compare

  • updated deployer dependency to v6.8
  • removed abandoned & unused deployer/recipes package dependency

v1.1.0

22 Nov 10:26

Choose a tag to compare

  • set composer default action to exclude dev requirements
  • remove options array from rsync actions to be overwriteable
  • fixed variable name typos