-
Notifications
You must be signed in to change notification settings - Fork 51
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
update configs for beta36 of core tools and add windows if check #23
Conversation
src/PowerShell/PowerShellManager.cs
Outdated
initialSessionState.ExecutionPolicy = Microsoft.PowerShell.ExecutionPolicy.Unrestricted; | ||
if(Platform.IsWindows) | ||
{ | ||
initialSessionState.ExecutionPolicy = Microsoft.PowerShell.ExecutionPolicy.Unrestricted; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is there currently an issue with the default?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Turns out a PlatformNotSupportedException
will be thrown when setting to Unresitrcted
:
PS:4> $p = [powershell]::Create($i)
Exception calling "Create" with "1" argument(s): "Operation is not supported on this platform."
At line:1 char:1
+ $p = [powershell]::Create($i)
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [], MethodInvocationException
+ FullyQualifiedErrorId : PlatformNotSupportedException
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since we are running ps1s, we need to set this - however, I personally have not experienced an instance where this is needed.
Maybe @daxian-dbw experienced this failure on Windows?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Seems like there is a more fundamental problem here and setting this to unrestricted is just a patch?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The exception happens on Linux only if I set it to a non-default value.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Setting ExecutionPolicy
is only needed when running the language worker on Windows. The default execution policy is Restricted
on Windows, so user function script won't run. On Linux and mac, execution policy doesn't take effect at all.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In AzF, this should be running in a Linux container so this code doesn't have impact. This is only used for someone running the language worker locally via func
on a Windows Client sku (Server should be RemoteSigned by default). Perhaps just add a comment on why it's being set to unrestricted.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Adding a comment sounds right to me.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'll make this change. Thanks guys!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@SteveL-MSFT + @daxian-dbw added
# This is the 1st commit message: separate DF SDK classes from DF worker classes # This is the commit message #2: fix typo # This is the commit message #3: DurableSDK now compiles by itself # This is the commit message #4: Allow ExternalSDK to handle orchestration # This is the commit message #5: document next steps # This is the commit message #6: allow external SDK to set the user-code's input. Still need to refactor this logic for the worker to continue working with old SDK # This is the commit message #7: add import module # This is the commit message #8: supress traces # This is the commit message #9: avoid nullptr # This is the commit message #10: pass tests # This is the commit message #11: fix E2E tests # This is the commit message #12: develop E2E tests # This is the commit message #13: Enabled external durable client (#765) Co-authored-by: Michael Peng <michaelpeng@microsoft.com> # This is the commit message #14: bindings work # This is the commit message #15: conditional binding intialization # This is the commit message #16: conditional import # This is the commit message #17: Added exception handling logic # This is the commit message #18: Revert durableController name to durableFunctionsUtils # This is the commit message #19: Ensure unit tests are functioning properly # This is the commit message #20: Corrected unit test names # This is the commit message #21: Turned repeated variables in unit tests into static members # This is the commit message #22: Fixed issue with building the worker # This is the commit message #23: Fix E2E test # This is the commit message #24: Fixed unit test setup # This is the commit message #25: Fixed another unit test setup # This is the commit message #26: Remove string representation of booleans # This is the commit message #27: patch e2e test # This is the commit message #28: remove typo in toString # This is the commit message #29: Update PowerShell language worker pipelines (#750) * Install .Net to a global location * Remove .Net installation tasks * Update install .Net 6 task * Update Windows image to use windows-latest # This is the commit message #30: Make throughput warning message visible for tooling diagnosis (#757) # This is the commit message #31: Update grpc.tools to version 2.43.0 # This is the commit message #32: Update Google.Protobuf.Tools to version 3.19.4 # This is the commit message #33: Revert "Update Google.Protobuf.Tools to version 3.19.4" This reverts commit bcbd022. # This is the commit message #34: Revert "Update grpc.tools to version 2.43.0" This reverts commit ccb323a. # This is the commit message #35: Update Google.Protobuf to 3.19.4 and grpc.tools to 2.43.0 (#762) * Update grpc.tools to version 2.43.0 * Update Google.Protobuf.Tools to version 3.19.4 # This is the commit message #36: Switch from Grpc.Core to Grpc.Net.Client (#758) * Upgraded protobuf versions and removed Grpc.Core dependency * Updated channel and option types used * Change channel credentials * Added http prefix to url * Add valid URL check and explicitly include credentials # This is the commit message #37: Update pipeline logic to generate the SBOM for release builds (#767)
camel cases the worker.config.json
adds the version to host.json
re-adds the IsWindows check since I was getting an exception setting Execution policy on mac.