New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Modernize Infra Client support for Powershell on Windows #10330
Comments
Would this include support for executing PowerShell Core scripts on non-Windows machines? |
@jakauppila this is currently scoped to windows only scenarios. It would definitely be nice to get powershell resources available for linux but I think that would deserve its own issue. |
I'm curious if (and suggesting that) this could be approached in a non-disruptive way by adopting the "pwsh" or "core" nomenclature instead of "powershell" for all of the replacements that would opt into PowerShell Core. Using the above examples:
This would also give those wanting to consume PowerShell on non-Windows machines a clearly named resource for their use. |
@jeremyciak we were thinking of adding an |
@mwrock I was definitely mulling that over as an option as well, but that has more potential to break things or require much more conditional code to support the implementation. I was thinking "path of least resistance" to try and streamline this initiative moving forward. |
@jeremyciak we definitely want to avoid breaking changes here but all working powershell based resources today should not be affected by this work. They will continue to use the "windows powershell" binary. One will need to explicitly specify the "pwsh" interpreter to "opt in" to the cross platform version of powershell. Because the powershell team has stated that "we consider PowerShell 7 and beyond to be the one, true PowerShell going forward," we would like to avoid creating a new set of resources. |
I added a few issues to this epic. Given the uncertain state of DSC interoperability with cross-platform powershell, this epic will not be altering the |
Is this something a bit too fundamentally crucial to let outsiders contribute towards? I would love to help with this if possible. Let me know! |
Happy to take contributions @jeremyciak ! It is work I plan on starting now and I will be focusing on the more nebulous |
closing since all PRs have been merged |
Summary
PowerShell, .NET, and DSC on Windows are deprecated and are primarily being replaced by PowerShell Core, .NET Core, and DSC Core.
Existing Infra Client resources are built around PowerShell and DSC and need to be proactively modernized to support the new framework so we can support new functionality in a timely manner.
Background
PowerShell, up to version 5.1, is now colloquially known as "Windows PowerShell" to differentiate it from "PowerShell Core" which is version 6.0 and later. The former is built on .NET and the later on the replacement cross-platform .NET Core. As implied by the serial versioning, Microsoft has indicated that PowerShell Core replaces Windows PowerShell in the future. Windows PowerShell is receiving no new development, but in the interim both can be installed side-by-side as Microsoft achieves feature parity. Additionally, the Desired State Configuration (DSC) feature that provides broad integration with many parts of the Microsoft ecosystem is replaced by DSC Core which is evolving into an Azure service as well.
Windows PowerShell 5.1 was released in August 2016 and all development in the Microsoft ecosystem over the past few years has focused on the new tools.
Infra Client has no support for PowerShell Core at this time.
Features
Aha! Link: https://chef.aha.io/features/SH-171
The text was updated successfully, but these errors were encountered: