Execute once / always

Sometimes, you may want to execute a program or a script each time WPKG runs (for example, to clean up a temp directory, synchronize time etc.).

To do this, use execute="always".


Another approach is when you want to execute a program or a script only once (for example, you want to remove a directory, set up permissions, or you're unable to produce any file or registry check).

To do this, use execute="once".

Below, an example for execute="always":

    <package
        id="time"
        name="Time Synchronization"
        revision="1"
        execute="always">
        <install cmd="net time \\timeserver /set /yes" />
    </package>

Notes

  • if you use execute="always", on revision upgrades, "<install cmd..." is used, not "<upgrade cmd..."
  • if you use execute="once", on revision upgrades, "<upgrade cmd..." is used
  • all checks are ignored with execute once / always