diff --git a/en/asgardeo/docs/guides/your-asgardeo/manage-environments/promote-configurations.md b/en/asgardeo/docs/guides/your-asgardeo/manage-environments/promote-configurations.md index 6fc06e81aa..4ccf89766a 100644 --- a/en/asgardeo/docs/guides/your-asgardeo/manage-environments/promote-configurations.md +++ b/en/asgardeo/docs/guides/your-asgardeo/manage-environments/promote-configurations.md @@ -8,4 +8,5 @@ {% include "../../../../../includes/deploy/ctl-tool/propagate-between-child-organizations.md" %} {% include "../../../../../includes/deploy/ctl-tool/customization-options.md" %} {% include "../../../../../includes/deploy/ctl-tool/logging.md" %} +{% include "../../../../../includes/deploy/ctl-tool/dryRun-mode.md" %} {% include "../../../../../includes/deploy/ctl-tool/resource-specific-notes.md" %} diff --git a/en/identity-server/5.11.0/docs/setup/promote-configurations.md b/en/identity-server/5.11.0/docs/setup/promote-configurations.md index b0425826ce..c41734faa8 100644 --- a/en/identity-server/5.11.0/docs/setup/promote-configurations.md +++ b/en/identity-server/5.11.0/docs/setup/promote-configurations.md @@ -183,3 +183,35 @@ Add a `LOGS` block to your `toolConfig.json` to configure logging behavior: !!! warning "Sensitive data in request payloads" Request bodies may contain sensitive credentials (client secrets, passwords, access tokens). Enabling `LOG_REQUEST_PAYLOADS` will write these values to your log output. Only enable this option in secure, non-production environments, and ensure log files are adequately protected. + +## Dry-run mode + +Dry-run mode lets you preview what `importAll` or `exportAll` would do without modifying the server or deleting any local files. + +### Usage + +Pass the `--dryRun` (`-d`) flag to either command: + +#### Import + +```bash +iamctl importAll --config ./env --dryRun +``` + +#### Export + +```bash +iamctl exportAll --config ./env --dryRun +``` + +### Behavior + +In dry-run mode, all mutating operations (POST, PUT, PATCH, DELETE) are skipped and logged with a `[DRY RUN] Would ` message instead of being sent to the server: + +#### Sample log output + +```bash +[DRY RUN] Would POST https://localhost:9443/api/server/v1/applications +``` + +During import, no resources are created, updated, or deleted on the server. During export, resources are still fetched and written to disk, but stale local files and directories are left in place. The end-of-run summary reports `Would Import`, `Would Update`, and `Would Delete` counts in place of the applied counts. diff --git a/en/identity-server/7.0.0/docs/deploy/promote-configurations.md b/en/identity-server/7.0.0/docs/deploy/promote-configurations.md index 091cb93f10..e56283f176 100644 --- a/en/identity-server/7.0.0/docs/deploy/promote-configurations.md +++ b/en/identity-server/7.0.0/docs/deploy/promote-configurations.md @@ -8,4 +8,5 @@ {% include "../../../../includes/deploy/ctl-tool/propagate-between-child-organizations.md" %} {% include "../../../../includes/deploy/ctl-tool/customization-options.md" %} {% include "../../../../includes/deploy/ctl-tool/logging.md" %} +{% include "../../../../includes/deploy/ctl-tool/dryRun-mode.md" %} {% include "../../../../includes/deploy/ctl-tool/resource-specific-notes.md" %} diff --git a/en/identity-server/7.1.0/docs/deploy/promote-configurations.md b/en/identity-server/7.1.0/docs/deploy/promote-configurations.md index 6795ed7951..67ee694e70 100644 --- a/en/identity-server/7.1.0/docs/deploy/promote-configurations.md +++ b/en/identity-server/7.1.0/docs/deploy/promote-configurations.md @@ -8,4 +8,5 @@ {% include "../../../../includes/deploy/ctl-tool/propagate-between-child-organizations.md" %} {% include "../../../../includes/deploy/ctl-tool/customization-options.md" %} {% include "../../../../includes/deploy/ctl-tool/logging.md" %} +{% include "../../../../includes/deploy/ctl-tool/dryRun-mode.md" %} {% include "../../../../includes/deploy/ctl-tool/resource-specific-notes.md" %} diff --git a/en/identity-server/7.2.0/docs/deploy/promote-configurations.md b/en/identity-server/7.2.0/docs/deploy/promote-configurations.md index 085431566b..f3be3f5677 100644 --- a/en/identity-server/7.2.0/docs/deploy/promote-configurations.md +++ b/en/identity-server/7.2.0/docs/deploy/promote-configurations.md @@ -8,4 +8,5 @@ {% include "../../../../includes/deploy/ctl-tool/propagate-between-child-organizations.md" %} {% include "../../../../includes/deploy/ctl-tool/customization-options.md" %} {% include "../../../../includes/deploy/ctl-tool/logging.md" %} +{% include "../../../../includes/deploy/ctl-tool/dryRun-mode.md" %} {% include "../../../../includes/deploy/ctl-tool/resource-specific-notes.md" %} diff --git a/en/identity-server/7.3.0/docs/deploy/promote-configurations.md b/en/identity-server/7.3.0/docs/deploy/promote-configurations.md index d305bfddb5..df2e724662 100644 --- a/en/identity-server/7.3.0/docs/deploy/promote-configurations.md +++ b/en/identity-server/7.3.0/docs/deploy/promote-configurations.md @@ -8,4 +8,5 @@ {% include "../../../../includes/deploy/ctl-tool/propagate-between-child-organizations.md" %} {% include "../../../../includes/deploy/ctl-tool/customization-options.md" %} {% include "../../../../includes/deploy/ctl-tool/logging.md" %} +{% include "../../../../includes/deploy/ctl-tool/dryRun-mode.md" %} {% include "../../../../includes/deploy/ctl-tool/resource-specific-notes.md" %} diff --git a/en/identity-server/next/docs/deploy/promote-configurations.md b/en/identity-server/next/docs/deploy/promote-configurations.md index d305bfddb5..df2e724662 100644 --- a/en/identity-server/next/docs/deploy/promote-configurations.md +++ b/en/identity-server/next/docs/deploy/promote-configurations.md @@ -8,4 +8,5 @@ {% include "../../../../includes/deploy/ctl-tool/propagate-between-child-organizations.md" %} {% include "../../../../includes/deploy/ctl-tool/customization-options.md" %} {% include "../../../../includes/deploy/ctl-tool/logging.md" %} +{% include "../../../../includes/deploy/ctl-tool/dryRun-mode.md" %} {% include "../../../../includes/deploy/ctl-tool/resource-specific-notes.md" %} diff --git a/en/includes/deploy/ctl-tool/dryRun-mode.md b/en/includes/deploy/ctl-tool/dryRun-mode.md new file mode 100644 index 0000000000..790e5a1f85 --- /dev/null +++ b/en/includes/deploy/ctl-tool/dryRun-mode.md @@ -0,0 +1,29 @@ +## Dry-run mode + +Dry-run mode lets you preview what `importAll` or `exportAll` would do without modifying the server or deleting any local files. + +### Usage + +Pass the `--dryRun` (`-d`) flag to either command: + +=== "Import" + + ```bash + iamctl importAll --config ./env --dryRun + ``` + +=== "Export" + + ```bash + iamctl exportAll --config ./env --dryRun + ``` + +### Behavior + +In dry-run mode, all mutating operations (POST, PUT, PATCH, DELETE) are skipped and logged with a `[DRY RUN] Would ` message instead of being sent to the server: + +```bash title="Sample log output" +[DRY RUN] Would POST https://localhost:9443/api/server/v1/applications +``` + +During import, no resources are created, updated, or deleted on the server. During export, resources are still fetched and written to disk, but stale local files and directories are left in place. The end-of-run summary reports `Would Import`, `Would Update`, and `Would Delete` counts in place of the applied counts.