Skip to content

V2.13.0 <- V2.12.3#256

Merged
jworkmanjc merged 59 commits into
v2.13.0from
v2.12.3
May 15, 2026
Merged

V2.13.0 <- V2.12.3#256
jworkmanjc merged 59 commits into
v2.13.0from
v2.12.3

Conversation

@jworkmanjc
Copy link
Copy Markdown
Contributor

@jworkmanjc jworkmanjc commented May 15, 2026

Issues

Merge v2.12.3 into v.2.13.0 for release

What does this solve?

Is there anything particularly tricky?

How should this be tested?

Screenshots


Note

Medium Risk
Moderate risk: changes touch migration execution paths (exe acquisition/validation, domain unjoin via CIM, and system description reads/writes) and JumpCloud API region selection, which could impact remote migrations if misconfigured or if validation logic is too strict.

Overview
Adds a new localEXEs mode across Start-Migration and the JumpCloud Agent invoke script to allow using pre-staged gui_jcadmu.exe/uwp_jcadmu.exe locally, with GitHub SHA/version validation when available and explicit pre-flight checks/fallback behavior when the GitHub API is rate limited.

Expands multi-region support by adding the IN console endpoint and updating multiple JumpCloud API call sites (org lookup, username search, system-context region detection, device init scripts) to try US/EU/IN endpoints.

Introduces new bulk device-description utilities (Get-DeviceDescriptionToCSV.ps1, Set-DeviceDescriptionFromCSV.ps1) to export user objects embedded in device descriptions to CSV and selectively sync edited CSV changes back to device descriptions with validation/preview.

Also includes CI/test and code-quality updates: adds PSScriptAnalyzer + Pester dependencies, increases Pester verbosity, adds new acceptance/unit tests for the new UWP exe helpers and description tooling, and refactors several WMI calls to CIM/Invoke-CimMethod plus minor PSScriptAnalyzer compliance tweaks.

Reviewed by Cursor Bugbot for commit d4cdaab. Bugbot is set up for automated code reviews on this repo. Configure here.

gweinjc and others added 25 commits April 22, 2026 08:58
Co-authored-by: Joe Workman <54448601+jworkmanjc@users.noreply.github.com>
* Initial hanges pushed - Added SHA validation and localEXE options enabled

* changelog

* Build updated

* Copy uwp_jcadmu.exe to C:\windows if localexe = True

* Build updated

* $RetryDelaySeconds configured

* download url for uwp_jcadmu.exe set to static

* fixed "UWP exe copy skips update when destination already exists"

* The fallback for AllowUnvalidatedOnApiFailure now handles all network or API failures (not just rate limiting)

* cursor review fixes

* Configured IsValid to be determined by only valid hash match

* The UWP EXE validation now only requires a hash match for IsValid, not a version match

* changelog updated

* Changes made as per review comments.

* Fixed: Historical release date for v2.12.2 incorrectly changed

* Merge conflicts managed and Release date updated

---------

Co-authored-by: Joe Workman <54448601+jworkmanjc@users.noreply.github.com>
@jworkmanjc jworkmanjc marked this pull request as ready for review May 15, 2026 14:59
@jworkmanjc jworkmanjc requested a review from a team as a code owner May 15, 2026 14:59
@jworkmanjc jworkmanjc requested a review from kmaranionjc May 15, 2026 14:59
@jworkmanjc jworkmanjc merged commit e918003 into v2.13.0 May 15, 2026
11 checks passed
jworkmanjc added a commit that referenced this pull request May 28, 2026
* CUT-5145 Device Query Updates (#255)

* default query mode

* profileSize/ lastWrite changes + tests

* v2.13.0

* MTP Tests

* define MTP as separate secret

* update test description

* device query tests

* Revert "device query tests"

This reverts commit 32286ac.

* update device query tests

* device query tests

* changelog

* ignore deviceQueryFunctions generated in tests

* set default state

* revert to previous test for CI null description systems

* missing test variable assignment + resolving skip behavior

* address issue for single users

* V2.13.0 <- V2.12.3 (#256)

* CUT-5052 V3 StatusReporting (#247)

* invoke

* char

* tests first pass

* update tests

* update

* date

---------

Co-authored-by: Joe Workman <joe.workman@jumpcloud.com>

* PSScriptAnalyzer Fix

* Update PSScriptAnalyzerSettings.psd1

* skip for now

* PSUseOutputTypeCorrectly

* Do not analyze test directory for now

* exclude state changing functions rule

* AvoidUsingEmptyCatchBlock

* PSUseOutputTypeCorrectly

* PSAvoidUsingWMICmdlet

* PSAvoidAssignmentToAutomaticVariable

* PSAvoidUsingWMICmdlet

* PSAvoidUsingWMICmdlet

* PSUseOutputTypeCorrectly

* PSUseProcessBlockForPipelineCommand

* PSAvoidAssignmentToAutomaticVariable

* PSReviewUnusedParameter false positive

* PSUseOutputTypeCorrectly

* PSAvoidUsingWMICmdlet

* change to Invoke-CimMethod

* Update PSScriptAnalyzerSettings.psd1

* Update Test-MigrationButton.Acceptance.Tests.ps1

* Get rid of homePath -it's not used

* changelog

* suppress PSScriptAnalyzer failure

* version

* Invoke-CimMethod to unjoin domain

* adding Pester and PSScriptAnalyzer to required

* Change output verbosity

* Update New-LocalUserProfile.ps1

set as string

* CUT-5119: ADMU Prd03 support

* Skip WindowsMDM from PSScriptAnalyzer

* Revert "Skip WindowsMDM from PSScriptAnalyzer"

This reverts commit 883c71f.

* Allow path exclusions PSScriptAnalyzer

* match support repo

* fix invoke

* Update ModuleChangelog.md

* fix dateTime parsing from updated CimInstance

* CUT-5119: check region by array

* fix: bugbot alerts

* show logged in (#253)

Co-authored-by: Joe Workman <54448601+jworkmanjc@users.noreply.github.com>

* Cut 5083 admu exe upload to jc commands option (#249)

* Initial hanges pushed - Added SHA validation and localEXE options enabled

* changelog

* Build updated

* Copy uwp_jcadmu.exe to C:\windows if localexe = True

* Build updated

* $RetryDelaySeconds configured

* download url for uwp_jcadmu.exe set to static

* fixed "UWP exe copy skips update when destination already exists"

* The fallback for AllowUnvalidatedOnApiFailure now handles all network or API failures (not just rate limiting)

* cursor review fixes

* Configured IsValid to be determined by only valid hash match

* The UWP EXE validation now only requires a hash match for IsValid, not a version match

* changelog updated

* Changes made as per review comments.

* Fixed: Historical release date for v2.12.2 incorrectly changed

* Merge conflicts managed and Release date updated

---------

Co-authored-by: Joe Workman <54448601+jworkmanjc@users.noreply.github.com>

* test in IN region

* test in EU

* test in EU

* MTP tests

* explicitly test with orgID

* "| Remove-JCAssociation" bug for dynamic user groups

* Revert "explicitly test with orgID"

This reverts commit 309bf83.

* revert test lines

---------

Co-authored-by: Ken Maranion <97972790+kmaranionjc@users.noreply.github.com>
Co-authored-by: Geoffrey Wein <geoffrey.wein@jumpcloud.com>
Co-authored-by: Geoffrey Wein <89030113+gweinjc@users.noreply.github.com>
Co-authored-by: lucasmendes-jc <lucas.mendes@jumpcloud.com>
Co-authored-by: shashisinghjc <shashi.singh@jumpcloud.com>

* CUT-5158 - Remote Revert in EXE (#258)

* revert via gui_admu.exe

* resolve issue with test-jumpcloudusername halting migration without apikey

* resolve issue with profilepath parameter during revert

* formatting

* prep for release

* validate autobind + apikey

* hide pwsh window

* release date

---------

Co-authored-by: Ken Maranion <97972790+kmaranionjc@users.noreply.github.com>
Co-authored-by: Geoffrey Wein <geoffrey.wein@jumpcloud.com>
Co-authored-by: Geoffrey Wein <89030113+gweinjc@users.noreply.github.com>
Co-authored-by: lucasmendes-jc <lucas.mendes@jumpcloud.com>
Co-authored-by: shashisinghjc <shashi.singh@jumpcloud.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

5 participants