If you are authenticated to ForgeBox in the CLI, you can synchronize your config settings to and from your ForgeBox account. This is a great way to get up and running on a new PC, or keep multiple CommandBox installs in sync with each other. In addition to synchronizing your Config Settings, this feature will also track your installed system modules, such as CFConfig, etc.
In order to sync your settings and modules, you must first be logged into ForgeBox. Check and see if you are logged in with
forgebox whoami
If necessary, log in with
forgebox login
Now you can synchronize your settings.
This command will push your local settings and modules up to your ForgeBox account.
config sync push
By default, the settings are "merged" so new local settings will be added to ForgeBox, but nothing will be removed. In order to remove config that only exists on ForgeBox, you can use the --overwrite
flag to force a full sync.
config sync push --overwrite
This command will pull your settings and modules from your ForgeBox account and set/install them locally.
config sync pull
By default, the settings are "merged" so missing settings will be added locally and missing system modules will be installed, but nothing will be removed. In order to remove config and modules that only exists locally, you can use the --overwrite
flag to force a full sync. This will remove local config settings and uninstall local system modules which were not on ForgeBox.
config sync pull --overwrite
This command will not change anything, but gives you a full report of all settings which are different between your local CommandBox CLI and ForgeBox. It will show you "Remote Only", "Local Only", and "Changed" settings and modules. Use this to see what you're about to change prior to pushing or pulling.
config sync diff
If you are logged into ForgeBox and have a ForgeBox Pro account, your settings will automatically sync for you. If
- the user is logged into forgebox
- the user has a ForgeBox Pro account
- the CLI is not in Offline mode
- The autosync feature is not disabled
then CommandBox will auto-sync ForgeBox settings based on these rules
Pull new settings from ForgeBox when …
- CLI Starts (interactive)
- logging into forgebox
- switching forgebox users
Push config to ForgeBox when…
- config settings get updated
- a system module is installed
- a system module is uninstalled
The forgebox endpoint used will be
- The endpoint configured in config settings for autosync
- the configured default forgebox endpoint
- “forgebox”
The following autosync settings can be used to control this.
Enable or disable autosync entirely.
Name of the ForgeBox endpoint to sync to. Only use this if you have a ForgeBox Enterprise account with your own custom ForgeBox URL.
Enable to disable whether syncing overwrites changes. See the docs for the overwrite
parameter to the config push and pull commands for more details. This setting basically just defaults that parameter.