Inedo Community Forums Forums
    • Recent
    • Tags
    • Popular
    • Login

    Welcome to the Inedo Forums! Check out the Forums Guide for help getting started.

    If you are experiencing any issues with the forum software, please visit the Contact Form on our website and let us know!

    How does executionPolicy actually work?

    Scheduled Pinned Locked Moved Support
    otter
    3 Posts 2 Posters 10 Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • W Offline
      williamb_5729
      last edited by

      The executionPolicy within a block seems to be ignored.

      I have a module defined as:

      module X 
      {
        {
          with executionPolicy = always 
          {
            Restart-Server();  
          }
          
          PSEnsure 
          {
             .. removed to brevity ...
          }
          
          Execute-PowerShell dir
          (
          );
          
          {
             Execute-PowerShell dir ();
          }
          
          with executionPolicy=onChange
          {
            Restart-Server()
          }
        }
      }
      

      In testing, the first Restart-Server never executes. I am working under the assumption it should always execute.

      The first Execute-PowerShell dir -- executes only if the PSEnsure finds a change. This is expected.

      The second Execute-PowerShell dir -- never executes, even when PSEnsure finds a change. Shouldn't a nested scope also be included in the change execution?

      The second Restart-Server never executes.

      Based on these results, it seems that executionPolicy has no discernible effect. How does executionPolicy actually work?

      Product: Otter
      Version: 2.0.12

      1 Reply Last reply Reply Quote 0
      • ? This user is from outside of this forum
        Guest
        last edited by

        Yes, it looks like the second Execute-PowerShell should run as well. It could be a bug - we'll look into that.

        I don't think executionPolicy should have any effect in this script - non-ensure operations only execute if any drift is detected regardless of execution policy. Both Restart-Server operations should run any time there is a change detected by PSEnsure. Did you want the first Restart-Server to run even if there are no changes?

        1 Reply Last reply Reply Quote 0
        • W Offline
          williamb_5729
          last edited by

          I've reread the documentation for Execution Modes. I believe I have a better understanding of executionPolicy's purpose now.

          1 Reply Last reply Reply Quote 0

          Hello! It looks like you're interested in this conversation, but you don't have an account yet.

          Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

          With your input, this post could be even better 💗

          Register Login
          • 1 / 1
          • First post
            Last post
          Inedo Website Home • Support Home • Code of Conduct • Forums Guide • Documentation