- Commands
quicksave list,quicksave list-generate,quicksave list-missing,quicksave getandquicksave get-generatewhich power the improved Quicksave GUI. - Command
backup list-missingto generate missing backup responses for GUI.
- Command
account synchas been restored with compatibility fixes for Cobra - Improved
monitorserver caching handling - Improved remote script
updatewith new WP-CLI--execparameter to quickly passdefine( 'WP_ADMIN', true );before running updates. - Massive quicksave performance improvements. Generating quicksaves will now also create individual
commit-<hash>.jsonfiles and alist.json. Those cached responses are used to power a very fast GUI.
- Command
server. Previously was a separate project named CaptainCore Dispatch which has now been merged here. - Command
configuration getandconfiguration sync - Integration for Fathom Analytics. Starting phase out support of Fathom Lite.
- Revamped Fathom tracker.js
- Delete accounts
- Replaced underlying Bash CLI framework with Cobra.
- Argument
--captain_idis now--captain-id - Moved command
backuptobackup generateand organized backup related commands tobackup download,backup get,backup get-generate,backup listandbackup list-generate. - Moved command
quicksavetoquicksave generateand organized quicksave related commands toquicksave file-diff,quicksave generate,quicksave rollback,quicksave show-changes,quicksave syncandquicksave usage-update. - Moved command
site environmentcommands toenvironment - Moved command
snapshottosnapshot generateand organized snapshot related command tosnapshot fetch-link. - Moved commands
copy-production-to-stagingandcopy-staging-to-productiontosite copy-to-productionandsite copy-to-staging. - Command
site copy-to-stagingnow uses a snapshot for improved deployments.
- Command
bulkto provide standardized way of parallelizing commands. - Command
site environment list - Commands
running get,running listandrunning listen - Local scripts
process-add.php,process-remove.php,process-start.phpandprocess-track.php - Restic infused backups
- Parallelizing to
captaincore backup - Global argument
--progress - Tracks process ID of parent CaptainCore command. Useful for following progress of bulk background commands.
- Remove runner commands
backup-runner,ssh-runnerandsync-data-runner. Implemented newbulkcommand for running commands in parallel. - Handles Elementor database upgrades when running
updatescript. - Improved
migratescript. Better feedback and minor order correction when applying new table prefix. - Improved
launchscript to use the source domain and properly handle escaped URLs. - Improved site monitor notifications.
- Command
cli updatenow performs CaptainCore database upgrades. - Store
scan-errorswith site instead of environment.
- Command
scan-errors - Command
regenerate-thumbnails - Shell environmental variables
- Support for dynamic /wp-content/ location
- Generate high quality home page thumbnails after running
capture
- Site monitor emails notifications now include site names and emojis π β
- Support custom /wp-content/ path in remote scripts
deploy-fathomanddeploy-helper - Improved remote script
apply-httpsto handle more common url replacements. - CaptainCore Helper v0.2.4: WPS Hide Login plugin compatibility
- CaptainCore Helper v0.2.3: Disable WordPress 5.5 auto-update email notifications for themes and plugins
- CaptainCore Helper v0.2.2: Remove site health widget from dashboard
- CaptainCore Helper v0.2.1: Improves compatibility with custom login plugins
- Replaced Gowitness screenshots with ScreenshotsCloud
- Command
account sync - Command
default-sync - Command
site deploy-defaultsas replacement forsite deploy-recipes,site deploy-settingsandsite deploy-users - Local script
site-deploy-defaults.phpas replacement forsite-fetch-default-recipes.php,site-fetch-default-settings.phpandsite-fetch-default-users.php
- Moved quicksave commands under
captaincore sitefor better organization - Improved
updatewith support for handling WooCommerce database upgrades - Improved
site prepareas replacement forsite deploy-initandsite deploy-configs - Command
site syncwill now trigger global defaults to deploy with argument--update-extras - Renamed command
view-changestoshow-changes - Removed unnecessary commands
- Removed commands
site deploy-init,site deploy-configs,site deploy-recipes,site deploy-settingsandsite deploy-users. Functionality combined and rolled intosite deploy-defaultsandsite prepare - Removed command
login. No longer needed as same functionality exists with deployed mu-plugincaptaincore-helper.php - Removed argument
--skip-deploymentfrom commandsite prepare
- Remote script
reset-permissions - Command
snapshot-fetch-download-link - Command
site syncas replacement forsite addandsite update - Argument
--skip-extrastosite update - File
lib/excludeswhich defines list of files to exclude from backups. - Local script
site-run-updates.phpwhich handles WordPress updates fromcaptaincore update
- Command
snapshotwith new data format. - Improved fleet mode configs within local script
configs.php. - Improved
site get. Will now accept in addition to . - Improved
site delete. Will now be triggered to run in the background. - Improved
captaincore backup. WordPress core files are ignored. Database backups now directed to private folder and nameddatabase-backup.sql. - Fix bug with remote script
plugins-zip - Renamed
captaincore preptocaptaincore site prepare - Renamed
captaincore rclone-configstocaptaincore site rclone-configs - Removed legacy s3 support from
captaincore backup - Removed commands
site update-field,site addandsite update - Removed local scripts
site-update.phpandsite-update-field.php
- CaptainCore WordPress plugin to CLI's private WordPress data storage.
- Command
captaincore site update-field <site> <field> <value> - Command
captaincore captain db-create - Argument
--skip-screenshottosync-datacommand. - Argument
--debugtoscreenshotcommand. - Config
rclone_uploadandrclone_upload_uri. Defines public bucket to use for capture images. - Local script
site-update-field.php - Local scripts
site-fetch-default-recipes.php,site-fetch-default-settings.phpandsite-fetch-default-users.phpas replacement for commandssite fetch-default-recipes,site fetch-default-settingsandsite fetch-default-users
- CaptainCore CLI's private WordPress data structure has been significant improved. The CLI now uses the same data structure as the CaptainCore WordPress plugin v0.10.
- Commands
captaincore site listandcaptaincore site getto work with new data format. - Argument
--field=idschanged to--field=site_idoncaptaincore site list - Improved
captaincore updatewith built in cache clearing. - Improved
screenshotwith new gowitness argument--disable-db - Improved local script
configs.php. Now pulls in keys and values pairs dynamically. - Fix bug with
screenshotwhen folder names contain spaces. - Updated local scripts
site-get.php,site-list.php,site-add.phpto use new data storage. - Command
captaincore capturerun automatically after a new quicksave.
- SSH key management with commands
key addandkey delete. - Command
site deploy-receipes - Command
site fetch-default-receipes - Arguments
--notesand--user_idtosnapshotcommand. - Argument
--debugtomonitor-checkcommand. - Argument
--debugtossh-runnercommand.
- SSH connections now hard fail with bad SSH key. Previously they timed out asking for a password.
- Fix bug with argument
--htmlwithquicksave-file-diff - Improved pulling in site details
- Removed
site fetch-default-pluginsandsite deploy-pluginsas they are no longer needed.
- Command
recipe add - Command
run - Command
site fetch-settings - Command
site deploy-settings - Argument
--recipe=<recipe_id>tosshcommand. - Argument
--htmltoquicksave-file-diffcommand for safe HTML output. - Config
path_recipes
- Fix bug where certain password wouldn't add correctly to Rclone.
- Fix bug when running
--fleet.
- Command
stats-generate. Integrates with Fathom instance for automatic setup - Command
manifest-generate. Generates manifest which tracks CaptainCore usage stats in manifest.json. In fleet mode this is generated per captain. - Command
quicksave-usage-update. Generates usage info (count and storage) for quicksaves. - Local script
manifest-generate.php - Config
captaincore_tracker_userandcaptaincore_tracker_passfor integration with Fathom instance - Environment support to
stats-deploy - Fleet mode support to
rclone-configs
- Added fleet mode support to
monitor - Improved
backupto use rclone site name with fleet mode support - Improved local usage stats storage
- Improved argument compatibility with remote script
deploy-fathomand commandstats-deploy
- Command
deploy-defaultsfor bulk deploying default plugins/users.
- Reduced feedback are various commands. This helps keeps command output streaming to the websocket running smoothly.
- Various fixes in
copy-production-to-staging,copy-staging-to-productionand scriptmigrate. Will properly handlecaptain_id. Fix paths for table_prefix checks. - Script
migratenow automatically selects most recent modified .sql file for import.
- Command
ssh-runnerwhich adds parallelizing tossh. - Config
rclone_screenshotsfor automatic upload of screenshots. - Flag
--skip-remotetosite deploy-init.
- Replaced argument
--allwith a new flexible targeting argument using the @ symbol. To target use@all,@productionor@staging. These can be combined to filter sites further by chaining other modifiers after the target. For example@production.updates-onwill target production sites are marked for automatic updates and@all.offload-onwill target all sites which have offload enabled. - Added an ongoing errors section to site monitor email notifications.
- Added environment support to
deploy-pluginsand configured plugins to activate. - Added gallery and ngg folder to remote script
migrate. - Added delay in
monitorwhen retrying failed checks. Attempt to reduce false positives.
- Commands
site bare-add,site bare-deleteandsite bare-updateto handle site management from other CaptainCore servers. These are used from CaptainCore Dispatch to relay site changes to all servers. - Argument
--filterargument tosnapshotwhich supports options: database, themes, plugins, uploads and everything-else. - Argument
--email-notifytobackup. Will no longer send emails by default.
- New visits format in
backup,copyandusage-update
- Fleet mode β΅β΅β΅ which enables CaptainCore to manage sites for mutiple captains (CaptainCore GUIs).
- Global argument
--fleetwhich will loop any commands through all captains by--captain_id=<id>. - Config
captaincore_fleetto activate Fleet mode. Sites will be stored in folders percaptain_idin format:<path>/<captain_id>/<site>_<site-id>/ - Configuration now stored in new
config.jsonformat. - Command
screenshotandscreenshot-runner. Takes screenshots using https://github.com/sensepost/gowitness and headless Chrome. - Command
site fetch-tokenwhich replacesget tokenphp script. - Command
site deploy-configswhich replacesget configsphp script. - Argument
--directtossh - Argument
--skip-remotetoquicksave
- Improvements to command
monitor. New argumentretrywhich defines attempts on failures. New data storagemonitor.jsonfor tracking sites when offline and come back online. New "notify at" times defined as 1 hour, 4 hour and 24 hour. Other failure checks will be ignored per failure. - Improvement to command
snapshotperformance. - Improvement to command
captaincore site deploy-init. Now deploys helper mu-plugin plugin to both production and staging sites. - Fixes in remote script
migrate. Properly handles themes/plugins with spaces in directory names. - Replaced configrations file
configfor newconfig.json. - Internally bundled configs script with arguments script. Now script files only needs a single include:
source ${root_path}lib/arguments. - Remove global arguments
--run-in-background=<job-id>andmark-when-completed - Replaced old commands
users,users-json,plugins-get,deploy plugins,deploy keys,deploy plugins,deploy usersanddeploy-initwith completely rewritten, simplified and organized commandssite deploy-init,site deploy-keys,site deploy-plugins,site deploy-users,site fetch-default-pluginsandsite fetch-default-users. Replaced legacy mu-plugin injection method for proper WP-CLI over SSH deployment.
- Environment support to commands
quicksaveandquicksave-store - Added multisite site count to remote script
fetch-site-data - Command
captaincore stats-fetch - Fetch stats from Fathom
- Breaking changes - Updated folder structure to include environments. New format:
<path>/<site>_<site-id>/<environment>/. Each environment can now handlebackups,snapshots,quicksavesandupdates. - Command
captaincore site getnow returns a single environment (production by default). Examplecaptaincore site get <site>andcaptaincore site get <site>-productionwill return production details whereascaptaincore site get <site>-stagingwill return staging. - Command
captaincore statsnow requires<site>instead of domain. This allows stats to be pulled dynamically from various provider (WordPress.com and Fathom). - Improved error handling with command
captaincore site delete. - Remote script
migrateproperly flushes permalinks and ignores SSL errors from source backups. - Bug fix where certain theme updates were missed due to duplicate json file name.
- Argument
--urlstocaptaincore monitor
- Multisite support to remote script
deploy-fathom - Improvements to
captaincore monitor-check - Reversed git compare with
quicksave-file-diff - Removed argument --skip-uploads from
copy-production-to-stagingandcopy-staging-to-production. Now always skips uploads and syncs them incrementially using rclone. - Install matching version of WordPress core when using
copy-production-to-stagingandcopy-staging-to-production.
- Bug fix with command
plugins-get
- Local script
monitor-fetch-errors-and-clean - Remote script
deploy-helper. Deploys a must-use helper plugin for CaptainCore. Initial release include quick login support for CaptainCore GUI. - Command
captaincore cli backup. Backups current CaptainCore cli configs to remote. - Config
rclone_cli_backupwhich configures where to store CaptainCore cli backups. - Argument
--updates-enabledtocaptaincore update - Argument
--pagetocaptaincore monitor
- Bug fix to resolve inconsistent arguments with remote scripts over SSH.
- Consistent sha-bangs on bash script files.
- Improved local script
monitor-generate-email - Reset file permissions.
- Functionality to remote script
migrate. Files from zip now extract within a new timestamped folder. Supports moving non-default root level files and folders. Supports moving blogs.dir folder for legacy multisite networks. Better feedback while running. Reapplies search privacy settings. Better wp-config.php handling. - Config
captaincore_branding_slug. Used when generating stats mu-plugin. - Config
captaincore_trackerfor running a Fathom Analytics instance. Used when generating stats mu-plugin.
- Improved staging and production deploys. Now uses new
migrateremote script. - Improvements for
captaincore ssh. Now checks and fails properly for staging sites which do not exists. Bug fix when sending arguments with spaces to remote script. - Make sure database export is secured when running
captaincore backup - Bug fix causing files within Kinsta cache plugin from being excluded during Quicksaves.
- Bug fix when uploading local zip with
captaincore store-snapshot - Bug fix with
captaincore util git-permissions-resetOnly process a max of 1000 files per run.
- Command
captaincore multisite-extract-subsite. Helps extract subsite from a Multisite network - Concurrency to
captaincore sync-data - Command
captaincore sync-data-runnerfor concurrency support
- Run
captaincore updatewith WP_ADMIN set true for increased compatibility. - Deactivate
wp-rocketwhen usingcopy-production-to-staging
- Argument
<site>and<plugin>...to commandplugins-zip - Configs
captaincore_branding_name,captaincore_branding_title,captaincore_branding_author,captaincore_branding_author_uri,captaincore_server,WPCOM_API_KEY,GF_LICENSE_KEYandACF_PRO_KEYtoconfigfile
- Command
captaincore plugins-zipnow handled through single SSH request. - Command
captaincore cli updatenow pulls via git. - Command
captaincore backupnow using rclone link sharing rather then separate script. - When doing a
wp search-replacealways use argument--report-changed-only - Revised
readme.mdandconfig.sampledocumentation. - Renamed directory
lib/phptolib/local-scriptsfor better clarity and consistency. - Renamed remote scripts for applying https to
apply-httpsandapply-https-with-www. - Renamed
captaincore utils localwptocaptaincore local-create-wordpress - Renamed
captaincore utils import-prod-db-locallytocaptaincore local-db-import-from-production - Bug fix with
captaincore upload. - Bug fix remote script
fetch-site-datawhen trimming whitespace. - Improved
readme.md - Improved
captaincore get transferred-statsregex matching. Accepts<file>argument directly rather then--file=<file>. - Improved
curlrequests. Now uses defined config$captaincore_gui.
- Argument
--filefromcaptaincore get transferred-stats - Unused submodule dnsrecon
- Dropbox uploader script
- Command
captaincore monitor-check <site>. Standalone script which allows checking of individual valid urls for parallelizing purposes. - Local script
monitor-error-count - Local script
monitor-generator-email - Emoji-Log for git commits.
- Improved remote script
fetch-site-data. Results are now striped of whitespace. - Run
sync-dataduring site prep - After
quicksavebackup quicksave to remote - Improvements to
captaincore monitor. Added basic email reporting for errors and warnings. Add max time of 30 secs per check. Parallel now defaults to 20. Refactored code. Moved email generation and error count to PHP.
- Command
captaincore update-logs-store <site> - Command
captaincore quicksave-store <site> - Argument
--alltocaptaincore ssh - Remote script
rewrite-prep
- CaptainCore API moved to custom WordPress rest endpoint. All communication to API now require a
site_id. - Renamed remote scripts
applysslandapplysslwithwwwtoapplyhttpsandapplyhttpswithwww - Renamed config
captaincore_wordpress_sitetocaptaincore_gui - Remote script
migrate- Only download if local file doesn't exist. - Command
captaincore updatenow send update logs to CaptainCore API.
- Argument
<git_hash_previous>fromcaptaincore quicksave-file-diff. This is now automatically calculated. - Domain requirement from CaptainCore API. Will need determine site from included
site_id.
- Global argument
--run-in-background=<job-id> - Command
captaincore job-fetch <job-id> - Command
captaincore login <site> <login> [--open] - Argument
--updates-enabledtocaptaincore site list - Remote script
fetch-site-data
- Improved json output of
captaincore update-fetch - Quicksaves now collects user data
- Improvements to
captaincore sync-data. Added--allargument. - Improvements to
--run-in-backgroundjson output. - Bug Fix: Curl argument list too long. All curl requests to CaptanCore API now use JSON format via standard input.
- Command
captaincore open. Opens one or more sites in browser. - Command
captaincore get config-from-api --field=<field>for fetching dynamic info from GUI. - Configs
captaincore_admin_emailandrclone_logstoconfigfile - Arguments
[--exclude-themes=<theme-names>]and[--exclude-plugins=<plugin-names>]tocaptaincore update
- Breaking changes - Updated folder structure to include site IDs. New format:
<path>/<site>_<site-id>/. Updated remote path to match local subfolder format/backup. Using a unique site ID allows sites to share the same name from different host providers. - Moved all action commands, not relating to site configs, from
captaincore siteto top levelcaptaincore. Those includeactivate,deactivate,prep,rclone-configsandsync-data. captaincore deploy pluginsnow pulls standard set of plugins via WordPress APIcaptaincore quicksavenow sends git commit timestamp to GUI- Improved docs and added
--alltocaptaincore monitor - Moved command
get quicksave_file_difftoquicksave-file-diff - Moved command
get quicksave_changestoquicksave-view-changes - Moved command
deploy production-to-stagingtocopy-production-to-staging - Moved command
deploy staging-to-productiontocopy-staging-to-production - Moved command
get transferred_statstoget transferred-stats - Moved command
utils store-snapshottostore-snapshot
- Duplicate command
quicksave_status - Commands
get log_stat,get log_statsandget server - Command/library dnsrecon
- Command
captaincore size. Calculates size of one or more sites. - Argument
--file=<file>tocaptaincore rollback. Handles rollback of individual Quicksave file. - Arguments
[--field=<field>]and[--search-field=<field>]tocaptaincore site search
- Updated
<site>format to support a host provider<site>@<provider>. The classic<site>will continue to work however won't be very particular if multiple site names exist. This should make dealing with multiple host providers enjoyable. Here's an example coping a site between providerscaptaincore copy anchorhost@wpengine anchorhost@kinsta. - Support for new provider field when running
captaincore site addorcaptaincore site update - Improvements for
captaincore site get. Moved complex logic into PHP needed for supporting new<site>with providers. - Improvements to Readme
- Improvements to
captaincore site search. Will now return partial domain and address matches. - Fixed name output in debug message.
- MacOS compatibility fix for
captaincore quicksave
- Housecleaning commands.
- Global argument
--mark-when-completedwhich adds json output after command finishes. Example:{"response":"Command finshed","timestamp":"2018-05-09-213121","runtime":"5"}. Used to track background jobs initiated from CaptainCore GUI. - Command
captaincore copy <site-source> <site-destination> [--email=<email>] - Arguments
--nameand--linktocaptaincore site deactivatefor custom links on deactivated sites.
- Improvements to
captaincore ssh. When using a--scriptautomatically pass the current site via--sitereducing the need to manually pass that info along. - Improved display of deactivated sites.
- Better output with remote script
launch - Require arguments
--siteand--domainon remote scriptlaunch - Improved output of remote scripts
applyssl,applysslwithwwwandlaunchby only reporting changes.
- Argument
--sitefrom remote scriptlaunch. This is now handled automatically.
- Command
captaincore updatefor themes/plugin updates. Changes are logged in json files. - Command
captaincore update-fetchto return update logs in json format - Command
db-restorefor pulling in a revision from Rclone remote. - Argument
[--all]tocaptaincore backupfor backing up all sites - Argument
[--all]tocaptaincore updatefor updating all sites - Argument
[--all]tocaptaincore quicksavefor quicksaving all sites - Arguments
[--all]and[--skip-backup]tocaptaincore snapshot - Require
<site>forcaptaincore site get - Require
<site>and<commit>forcaptaincore rollback - Output
site_idtocaptaincore site get. - Script
lib/argumentsto handle bash arguments removing duplication - Automatic removal of files from remote storage when removing sites.
- File permission reset to
captaincore cli update
- Breaking changes - Switched folder structure from domains to site names. Consolidated folders under sites rather then separate top level organization for backups and quicksaves. New format: "//backup", "//quicksave" and "//updates"
- Moved functionality of
captaincore generate snapshotsintocaptaincore snapshot - Moved
usersandusers-jsoncommands to root level - Quicksave will no longer happen as part of the backup process
- Improved Quicksave functionality to run standalone without a full backup requirement.
- Fix for uploading snapshots to remote storage
- Fixed staging/production deployment emails
- Improved docs for
captaincore backup,captaincore rollback,captaincore updateandcaptaincore site get - Improved sample config file
- Replaced
install(s)tosite(s)throughout docs and code - Replaced
[--skip-url-override with]with[--update-urls]in migrate script. Default behavior now keeps sources urls when migrating sites. - Excluded certain files when unzipping during migrations
- Generalized ssh script
update. Will now pass through any arguments towp plugin updateandwp theme update. - Revised definable
$path. It's now used bybackup,quicksaveandupdatecommands. - Renamed
lib/ssh/tolib/remote-scripts
- Bundled bash cli command
captaincore cli uninstall - Command
captaincore get stats - Command
captaincore generate snapshots
- Command
captaincore cli update - Support for flags with special characters with
captaincore ssh
- Renamed deployment commands to
captaincore deploy production-to-stagingcaptaincore deploy staging-to-production - Renamed lib ssh_scripts folder to ssh
- Renamed email command from
dns email-lookuptodns email - Renamed commands
dns bulk-domainanddns bulk-nameservertodns domainanddns nameserver - Renamed
captaincore generate plugins_zippedtocaptaincore generate plugins-zipped - Renamed to throughout usage documentation
- Renamed command
captaincore generate usagetocaptaincore usage-update - Moved and renamed command
captaincore get backup_statustocaptaincore backup-status - Moved and renamed command
captaincore generate pluginstocaptaincore plugins-get - Moved and renamed command
captaincore generate plugins-zippedtocaptaincore plugins-zip - Moved and renamed command
captaincore generate rclonetocaptaincore site rclone-configs - Moved command
captaincore generate localwptocaptaincore utils localwp - Moved command
captaincore generate quicksavetocaptaincore quicksave - Deactivate 'login-recaptcha' plugin on staging deployment
- Cleaned up whitespace and added comments to SSL scripts
- Improvements to
migratescript. Update table prefix if changed. Expand database search.
- Argument
[--skip-uploads]tocaptaincore deploy production_to_staging_kinsta - Command
captaincore dns ips-from-site-names <site> [<site>] [<site>] [--skip-follow] - Command
captaincore dns email-lookup <site> [<site>] [<site>]...
- Updated
config.sample. Remove trailing slash as it will cause issues with backups. - Improvements to
captaincore ssh [<site>] --script=db-convert-to-innodb. Will count MyISAM tables and convert to InnoDB if needed. - Renamed underscores to dashes with
captaincore dns bulk-domainandcaptaincore dns bulk-nameserver - Fix for plugin deploys and plugin rollbacks
- Standardized arguments for migration script
captaincore ssh <site> --script=migrate --url=<backup-url> [--skip-url-override] - Clean up and added comments to migrate script
- Deployable scripts
verify-google-analytics-takeover --verifycode=<verifycode> --uacode=<uacode> --email=<email>,launch --install=<install> --domain=<domain>andupdate - Argument
[--skip-url-override]to deployable scriptmigrate <backup-url> - File support to
captaincore utils store-snapshot <url|file> - Configurable variables rclone_archive, rclone_backup and rclone_snapshot to config file to manage Rclone remote locations.
- Fixed various typos in comments
- Argument support to deployable ssh scripts
- Renamed command store_snapshot to store-snapshot
- Improvements to
captaincore ssh --scriptto allow for passing arguments. For examplecaptaincore ssh <site> --script=<script> --<arg1>=arg1 --<arg2>=<arg2> - Improvements to migrate script. Wget progress now displays properly. Fix for db import with buggy plugins/themes.
- Exclude zip files from Quicksaves
- Subcommand
captaincore site search <search>to find sites by domain - Argument
--alltocaptaincore rollback <site> <commit>to rollback entire quicksave - Arguments
[--filter=<theme|plugin|core>][--filter-slug=<slug>][--filter-version=<version>][--filter-status=<active|inactive|dropin|must-use>]tocaptaincore site list - File to remove duplicate quicksaves with
wp eval-file remove-duplicate-quicksaves.php - Added installations steps to generate local WordPress site to
captaincore cli install - Usage info for rollback command
captaincore rollback --help - Argument
[--script-args=<script-args>]tocaptaincore ssh --script. Example:captaincore ssh <site> --script=migrate --script-args=<backup-url> - Collection of scripts (applyssl, applysslwithwww, db-import, migrate-to-kinsta) to be used with
captaincore ssh --script. - Argument
--field=idstocaptaincore site list - Command
captaincore utils sync-with-masterto keep captaincore cli running locally in sync with master. To config addcaptaincore_masterandcaptaincore_master_portvars to ~/.captaincore/config file. - Argument
[<site-id>]tocaptaincore utils sync-with-masterwhich will force sync a particular site by id
- Deploy keys and generate token on
captaincore site update. - Improvements to
captaincore utils store_snapshot - If script doesn't exist attempt running locally.
captaincore ssh --script - Updated usage info for ssh command
captaincore ssh --help - Command
captaincore sshwill attempt to retrieve unknown sites by triggeringcaptaincore utils sync-with-master - Significant improvements to
migratescript in order to work on both WP Engine and Kinsta.
- Arguments
[--plugin][--theme][--plugin-status=<plugin-status>]and[--theme-status=<theme-status>]have been removed and functionality moved to new filter arguments oncaptaincore site list
- Arguments
--command=<command>and--script=<file>tocaptaincore ssh - Argument
--bashtocaptaincore site get <install>which allows bash to read credentials stored in CLI's own private WordPress storage. - New method for loading site credentials into bash
- Command
captaincore site sync-data [<install>] - Command
captaincore monitor <site> - Argument
[--parallel=<number-of-checks>]tocaptaincore monitorwhich controls how many health checks are run at the same time
- Site credentials are now stored in private WordPress site within CaptainCore CLI.
- Switched internal commands to use new ssh argument
--command=<command> - Moved site functions from
configcommand undersitecommand - Renamed site command
newtoaddfor better consistency - Major rework on all
captaincore sitecommands to use new WordPress storage. - Added argument
--field=<field>tocaptaincore site list - Fixed regex bug with ssh argument
--command - Fixed backups for sites not running WordPress
- Support for ftp sites backups only
- Command
captaincore ssh-batchand merged functionality intocaptaincore ssh - Default docs for
captaincore cli install - Command
captaincore site processas it's no longer needed since switching over credential storage to WordPress. - Local text based
loginsfile which previously was storing site credentials. - Command
captaincore get domainsas functionality has been merged withcaptaincore site list --field=domain
- Quicksave file diff command
captaincore get quicksave_file_diff <install> <git_hash_current> <git_hash_previous> <file> - New command
captaincore deploy staging_to_production_kinsta <install> --email=<email> - New command
captaincore ssh-batch <command> - Argument
--email=<email>tocaptaincore deploy production_to_staging_kinsta
captaincore deploy keys <install>now deploys to Kinsta staging sites- Major performance increases to
captaincore deploy production_to_staging_kinsta. Switch over to zip/extract wp-content folder instead of sftp sync. - Standardized site address PHP variable. All $ipAddress are now $address.
- Rollback command
captaincore rollback <install> <commit> [--plugin=<plugin>] [--theme=<theme>] - Argument
--forcetocaptaincore generate quicksaveto manually force add even if no changes were made - Argument
--publictocaptaincore upload <install>which is used for the new rollback command - Get quicksave status command
captaincore get quicksave_status <install> <git_hash> - URL encoding to curl commands
- Added Kinsta staging support to
captaincore upload
- Excluded unnecessary files for quicksave
*.log, *.log.txt and cache/ - Patch to work around WPE SSH WP-CLI username bug
- Curl now posts to CaptainCore API
- Updated header info for
captaincore
- Deploy ssh keys
captaincore deploy keys <install>which is needed before using SSH/WP CLI on Kinsta sites. - Generate plugin zips for easy deployment
captaincore generate plugins_zipped - Quicksave command
captaincore generate quicksave <install>which captures nightly version numbers for plugins, themes and core. - Get quicksave changes command
captaincore get quicksave_changes <install> <git_hash>
- Simplified internals for
captaincore config new - Upgraded deploy users to new format
- Rewrote
captaincore deploy pluginsto use SSH/WP-CLI - Deploy token using Anchor API
- Fix for stats during nightly backup
- Changed backup snapshots to use Zip format because non geeks don't know what tar files are
- Deploy to backup API
- Argument
--delete-after-snapshottocaptaincore snapshot - Config process command
captaincore config processwhich will safely update the logins only when needed - Generate rclone command
captaincore generate rclone <install>which now imports staging credentials automatically. - Setup instructions to readme.md for installing rclone systemwide
- Generate usage command
captaincore generate usage - Command for grabbing Quicksave changes from git repo
- Load bash config file dynamically
- Upgraded
captaincore config updatecommand to new format - Switch
captaincore config updateandcaptaincore backupto use new generate rclone command - Delete command format is now
captaincore config delete --install=<install> --domain=<domain> - Only make snapshot if domain for install is found
- Unnecessary delete.sh support file
- Bash variable $path_rclone
- Bulk domain lookup command
captaincore dns domain <domain> - Bulk nameserver lookup command
captaincore dns nameserver <domain> - File upload command
captaincore upload <install> <local-file> - Config get command
captaincore config get <install> --field=<field> - Local WordPress generator (MacOS + Valet required)
captaincore generate localwp <folder> - DNSRecon
captaincore utils dnsrecon <domain>seecaptaincore help utils dnsreconfor setup configuration - CLI usage and help documentation
- Argument to snapshot
--skip-remote - Tools for resetting file permissions within local git repo
- Database backup and
--skip-dbtocaptaincore backup [<install>]
- Renamed project to CaptainCore CLI
- Migrated to structured CLI using Bash CLI. See
captaincore helpfor getting started. - Implemented Rclone v1.39 new
rclone config createfor adding/removing sites - Moved WordPress.com API to config file
- Old structure
~/Scripts/{Action}/{Task}.sh {installname} - Lftp dependencies and replaced with Rclone
- Unnecessary .php and .sh extensions
- Initial release