Saltstack waiting for file appearing

configurationmanager, powershell, salt-stack

Solution

Unfortunately there is not a better way to do this in the current version of salt. But there was `retry` logic added into states in the next release Nitrogen.

The way I would do this in that release is.

installation:
  cmd.run:
    - name: ./installation_script

wait for installation:
  cmd.run:
    - name: Test-Path @('/path/to/file/to/appear')
    - retry:
      - attempts: 15
      - interval: 10
      - until: True
    - shell: powershell

And this will continue to run the Test-Path until it exits with a 0 exit code (or whatever the equivalent is in powershell)

https://docs.saltstack.com/en/develop/ref/states/requisites.html#retrying-states

Daniel

Problem

Is it possible to do the same thing in Saltsack, but by embedded functionality (without powershell workaround)? ``` installation: cmd.run: - name: ./installation_script wait for installation: cmd.run: - name: powershell -command "Start-Sleep 10" - unless: powershell -command "Test-Path @('/path/to/file/to/appear')" ```

Original source

Related problems