Skip to content

Document DryRun/Plan feature and update module version#497

Merged
NowinskiK merged 4 commits into
developfrom
issue-360-dryrun
Jul 7, 2026
Merged

Document DryRun/Plan feature and update module version#497
NowinskiK merged 4 commits into
developfrom
issue-360-dryrun

Conversation

@NowinskiK

Copy link
Copy Markdown
Member

This pull request introduces a major enhancement to the Publish-AdfV2FromJson cmdlet by adding a terraform-style planning mode for deployments, along with documentation updates and supporting code changes. The new -Plan switch (an alias for -DryRun) provides a clear, structured summary of intended changes (create, update, delete, unchanged) and exposes this plan for CI/CD policy enforcement. Documentation and tests have been updated to reflect and validate this new functionality.

New Planning Feature:

  • Added a -Plan switch to Publish-AdfV2FromJson, acting as an alias for -DryRun but with terraform-style intent and output. The plan summarizes changes as create, update, delete, or unchanged, and the result object now includes a DryRunPlan property for CI/CD checks. [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11]

  • Implemented supporting functions in ApplyExclusionOptions.ps1 to generate and print the terraform-like plan, including detailed classification of objects. [1] [2]

Documentation Updates:

  • Updated documentation (README.md, CMDLET_REFERENCE.md, PUBLISHING.md) to describe the new -Plan switch, its output format, and CI/CD usage examples. Also fixed a typo ("Stoping" → "Stopping"). [1] [2] [3] [4] [5] [6]

Testing Enhancements:

  • Added unit tests to verify the new planning feature, ensuring correct classification and output, and that -Plan behaves as an alias for -DryRun. [1] [2]

Other Changes:

  • Bumped the module version to 1.18.0 in azure.datafactory.tools.psd1.
  • Updated the changelog to document the new feature and version.

@NowinskiK NowinskiK linked an issue Jul 1, 2026 that may be closed by this pull request
@NowinskiK NowinskiK requested a review from Copilot July 1, 2026 02:17

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds a terraform-style “planning” mode to Publish-AdfV2FromJson by introducing -Plan (alias behavior of -DryRun) and emitting a structured Create/Update/Delete/Unchanged plan that can be consumed in CI/CD, alongside documentation, tests, and a module version bump.

Changes:

  • Added -Plan switch (alias behavior of -DryRun) and attached a DryRunPlan object to the returned ADF object during dry runs.
  • Implemented plan generation/printing helpers (Get-DryRunPlan, Write-DryRunPlan) to produce terraform-like output.
  • Updated docs/tests and bumped module version to 1.18.0 (with changelog entry).

Reviewed changes

Copilot reviewed 8 out of 8 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
test/Publish-AdfV2FromJson-DryRun.Tests.ps1 Adds unit tests validating DryRunPlan classification and -Plan alias behavior.
README.md Documents the new DryRun/Plan output format and CI policy usage example; fixes “Stoping” typo.
public/Publish-AdfV2FromJson.ps1 Adds -Plan switch, loads target ADF in dry run for classification, and returns DryRunPlan.
private/ApplyExclusionOptions.ps1 Adds functions to compute and print a terraform-style plan.
docs/GUIDE/PUBLISHING.md Updates cmdlet signature and describes -Plan behavior.
docs/ADVANCED/CMDLET_REFERENCE.md Updates cmdlet signature and parameter list to include -Plan.
changelog.md Adds 1.18.0 entry describing the new planning feature.
azure.datafactory.tools.psd1 Bumps module version to 1.18.0.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +267 to +269
$dryRunPlan = $null
if ($DryRun.IsPresent) {
$targetAdfInstance = $null
Comment thread private/ApplyExclusionOptions.ps1 Outdated
@NowinskiK NowinskiK merged commit c2829e2 into develop Jul 7, 2026
2 checks passed
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.

Display intended changes in DryRun

2 participants