title: SaltStack: Downloading archive based on changes to SHASUM file
body: <p>I upload my builds to S3 and have a <code>latest</code> folder which always contains the newest build. Alongside of the build I have a SHASUM file <code>SHASUM256.txt.asc</code> which looks like this:</p>
  
  <pre><code>-----BEGIN PGP SIGNED MESSAGE-----
  Hash: SHA256
  
  c05c2e459aab92a490bbbb498c20a86433be23a1  server.tar.gz
  -----BEGIN PGP SIGNATURE-----
  Version: GnuPG v1
  
  iF4EAREIAAYFAlja1qkACgkQb6kayJ97kRKmHgEArOhI8kWEBwddkSY0rmPvFjGh
  WgYTK2BuPf3M0mL1n50BAJCj5cl6ZbOIfp5j+499xk/LLxDu1PcWDA+u8XhZ88Sf
  =czUN
  -----END PGP SIGNATURE-----
  </code></pre>
  
  <p>I'm trying to get Salt to download and extract the archive anytime that the SHASUM changes, but it never thinks that the archive has changed. The only solution I've found is to force it to always download and extract the file, but that kind of defeats the whole purpose.</p>
  
  <p>Here's what I'm currently using:</p>
  
  <pre><code>server-build:
    archive.extracted:
      - name: /opt/server
      - makedirs: True
      - source: {{ branch }}/latest/build/server.tar.gz
      - archive_format: tar
      - source_hash: {{ branch }}/latest/build/SHASUMS256.txt.asc
      - overwrite: True
  </code></pre>
  
  <p>What's the right way to tell Salt to only download an archive based on changes to the SHASUM file? I'm currently using salt 2016.11.3 (Carbon).</p>